Getting error while Printing dynamic data in phpexcel – Error Invalid Argument while printing data from my MYSQL Database
JavaScript
x
$labels = array();
$i = 0;
while ($row1 = mysql_fetch_array($query_result1, MYSQL_ASSOC)) {
$labels[$i++] = $row1["label"];
}
foreach($labels[0] as $ind=>$label){ //error invalid argument
$letter = range('A', 'Z')[$ind];
$tmp = explode('>',$label);
$col_names[] = $tmp[0];
echo $letter.'1'."rn";
echo "Column -> $tmp[0] rn";
}
foreach ($labels as $ind=>$item){ //Error invalid Argument
$index = $ind + 2;
foreach($item as $ind2=>$data){
$letter = range('A', 'Z')[$ind2];
$val = explode('>',$data);
$objPHPExcel->getActiveSheet()->setCellValue("$letter$index",$val[1]);
}
}
My Var_dump($labels) output is
JavaScript
array(15) {
[0]=>
string(2) "EY"
[1]=>
string(3) "PWC"
[2]=>
string(8) "Deloitte"
[3]=>
string(4) "KPMG"
[4]=>
string(14) "Grant Thornton"
[5]=>
I Added my Whole Code Please Once Please
it is giving invalid argument error
Advertisement
Answer
As mentioned in the comments, $labels[0]
is not an array, $labels
however is.
Change:
JavaScript
foreach($labels[0] as $ind=>$label){
To:
JavaScript
foreach($labels as $ind => $label) {
Expanding based on your comments:
JavaScript
foreach($labels as $ind => $label) {
$index = $ind + 2;
$letter = range('A', 'Z')[$ind2];
$val = explode('>', $data);
$objPHPExcel->getActiveSheet()->setCellValue($letter . $index, $val[1]);
}