我創建了一個腳本來從每個年份的mysql表中獲取數據並放入相應年份的數組中。我檢查了sql和while循環迭代工作。內部創建PHP數組for循環但不打印
<?php
mysql_select_db($database_hari,$hari);
$start=2013 ;
$end=2015;
$xdata=array();
for($year=$start;$year<=$end;$year++){
${"y".$year}=array();
$i=0;
$query=mysql_query("SELECT tld_master.location,tld_dose.year, AVG(tld_dose.dose)*4 as avgdose from tld_master left join tld_dose on tld_master.tldno=tld_dose.tldno where tld_master.site='F' and tld_dose.year=$year GROUP BY tld_dose.year, tld_dose.tldno");
while($result=mysql_fetch_array($query)){
$xdata[$i]=$result['location'];
${"y".$year."[".$i."]"}=$result['avgdose'];
$i++;
}
}
print_r($y2015);
?>
打印顯示「陣列()」 但是,如果我內部呼應各數組值for循環它打印。錯誤在哪裏?
你用'$ {「y」。$ year} [$ i]'來代替'$ {「y」。$ year。「[」。$ i。「]」 }'? – Havenard
雖然這很奇怪,但動態創建變量名稱。你可以使用'$ years = []',然後使用'$ years [$ year] [$ i] = ...'。 – Havenard