PHP передает массив, созданный в цикле for в функцию jpgraph
У меня есть 3 массива, созданные следующим образом:
$start=2013 ;
$end=2015;
$no_of_bars=$to-$from+1;
$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++;
}
}
Создает три массива y2013,y2014,y2015.
Я должен передать этот массив в jpgrpah для построения групповой панели. Новые объекты бюстгальтера создаются таким образом
$j=0;
for($year=$start;$year<=$end;$year++, $j++){
${"plot".$year}=new BarPlot(${"y".$year});
${"plot".$year}->SetFillColor($color_array[$j]);
if($year!=$end){$sep=",";}else{$sep="";}
$plots.="$"."plot".$year.$sep;
}
Есть три баровых участка сюжет2013, участок2014, участок2015. Все эти три являются массивами. Я хочу передать эти массивы в функцию jpgraph, приведенную ниже:
$gbplot = new GroupBarPlot($plots);
но это не работает. Но если я изменяю его на приведенный ниже, он работает
$gbplot = new GroupBarPlot(array($plot2013,$plot2014, $plot2015));
Я думаю, что во втором массиве передаются в качестве аргументов, где, как и в первом, просто имя массива передается как строка. Как передать массив, созданный внутри цикла for, в функцию jpgraph?
1 ответ
Решение
Не проверено, но попробуйте код ниже.
$j=0;
for($year=$start;$year<=$end;$year++, $j++){
${"plot".$year}=new BarPlot(${"y".$year});
${"plot".$year}->SetFillColor($color_array[$j]);
$plots[] = ${"plot".$year};
}
$gbplot = new GroupBarPlot($plots);