作者forwardwith (小橘子)
看板PHP
标题[请益] array 呼叫问题
时间Mon Oct 1 19:35:11 2007
各位大大~~~~
麻烦帮帮忙 我找了很久 一直try 都还是不知道问题在哪~~~
----------------------------------------------------------------
我要将一个csv档里的资料 用一个二维array存起来
我设此array变数是 $trainData
而假设csv里的资料是
1,2,3,4,5,6,7,8,9,10,11
12,13,14,15,16,17,18,19,20,21,22
我希望
$trainData[0][1] = 1
$trainData[0][2] = 2
$trainData[0][3] = 3
.
.
.
.
$trainData[1][0] = 12
$trainData[1][1] = 13
.
.
.
於是我就这样写
------------------------------------------------
1 $row=1;
2 $j=0;
3 while ($data = fgetcsv($fp,1000, ",")) {
4 $num = count($data);
5 for ( $c=0; $c<$num; $c++ ) {
6 $trainData = array($j => array($c => $data[$c]));
7 echo ($trainData[$j][$c]."<BR>");
8 }
9 $row++;
10 $j++;
11 }
12
----------------------------------------------------------
我发现第7行print出来 是我要的那个样子
但是只是一出for那个回圈呼叫 echo $trainData[0][2]; (随便取一个有的数)
它都会告诉我
Notice: Undefined offset: 0
这样跟本就不能用此变数啊..........
有哪位大大知道是为什麽吗
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.233.81.186
1F:推 LPH66:你在while之前写上$trainData=null;试试 10/01 19:42
2F:→ LPH66:我猜是scope的问题... 10/01 19:42
3F:→ forwardwith:还是不行耶.... 一样的回应 10/01 19:48
4F:→ forwardwith:我怎麽想都想不透为什麽会这样~ 请大大帮帮忙~ 10/01 19:49
5F:推 forwardwith:还是很谢谢你~~~ :) 10/01 20:34