带有PHPExcel的多维数组
我正在尝试使用phpexcellibrery将多维数组导出为excell文件。不知何故,我只能导出columne中带有groupname的文件 我的代码:带有PHPExcel的多维数组,php,excel,phpexcel,Php,Excel,Phpexcel,我正在尝试使用phpexcellibrery将多维数组导出为excell文件。不知何故,我只能导出columne中带有groupname的文件 我的代码: $arr = array( "group1"=>array( 1001 => array( "name"=>"Product 1", "de
$arr = array(
"group1"=>array(
1001 => array(
"name"=>"Product 1",
"desc"=>"lorem ipsum",
"star"=>"3",
"price"=>"15"
),
1002 => array(
"name"=>"Pedruzka",
"desc"=>"Speck, Zwiebeln",
"star"=>"2",
"price"=>"17"
)
),
"group2"=>array(
1001 => array(
"name"=>"Margherita",
"desc"=>"Tomaten, Mozzarella, Oregano",
"star"=>"3",
"price"=>"15"
),
1002 => array(
"name"=>"Pedruzka",
"desc"=>"Speck, Zwiebeln",
"star"=>"2",
"price"=>"17"
)
)
)
出口代码:
$objPHPExcel = new PHPExcel();
......
$i = 0;
foreach ($arr as $key => $value){
$objPHPExcel->getActiveSheet()->SetCellValue(PHPExcel_Cell::stringFromColumnIndex($i).'1', $key);
$objPHPExcel->getActiveSheet()->SetCellValue(PHPExcel_Cell::stringFromColumnIndex($i+1).'2', $value);
$i++;
}
.....
我想解释这种情况最简单的方法就是解释循环是如何工作的。
foreach
循环将为您提供键
和值
因此,根据您使用的第一个循环:
(第一个)键将是:group1
此键的值包含:
array("name"=>"Product 1",
"desc"=>"lorem ipsum",
"star"=>"3",
"price"=>"15"
)
所以基本上你需要做的是使用一个额外的循环。
如果你想更好地理解,你可以在这里找到答案
基本上你要做的是:
foreach ($arr as $key => $value){
foreach ($value as $key2 => $value2){
//do stuff with PHPExcel
//call items in array by key
$name = $value2["name"];
$price = $value2["price"];
}
}
当您实际需要3个循环时,您只使用1个循环…您能给出一些代码示例来帮助我们吗?我试图做到这一点,但遇到了更多的问题?