我正在尝试使用PHPExcel lib。我已经阅读了一些API,但仍然没有弄清楚如何正确使用它。
我正在尝试将数组转换为excel表。
如果我有:
$Array = array(
array('key1' => 'Content1', 'key2' => 'Content2'),
array('key1' => 'Content3', 'key2' => 'Content4')
);
因此excel文件中的输出将为:
key1 key2
Content1 Content2
Content3 Content4
key1
和key2
作为标题。
答案 0 :(得分:0)
有些讨论在这里。核实 Example
答案 1 :(得分:0)
这是我的代码我做了什么...但这里的情况略有不同,这里的输入是 excel文件,而输出是&#39中的数组数组;键' => '值'对(在你的情况下反之亦然)这不是一个解决方案,但它可能会帮助你开始。
<?php
include './PHPExcel/IOFactory.php';
$objPHPExcel = PHPExcel_IOFactory::load('campaign.xlsx');
foreach ($objPHPExcel->getWorksheetIterator() as $worksheet) {
$highestColumn = $worksheet->getHighestDataColumn();
//Getting highest column with data
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
//Getting highest row with data
$highestRow = $worksheet->getHighestRow();
$header = [];
//For saving all heading from Excel file.
for( $i = 0 ; $i <= $highestColumnIndex ; $i++)
{
$cell = $worksheet->getCellByColumnAndRow($i,1);
$val = $cell->getValue();
$header[] = $val;
}
$completeArray = [];
$value = [];
//For saving header and value pairs in a array
for ($row = 2; $row <= $highestRow; ++ $row) {
for ($col = 0; $col < $highestColumnIndex; ++ $col) {
$cell = $worksheet->getCellByColumnAndRow($col, $row);
$val = $cell->getValue();
$value[$header[$col]] = $val;
}
//Inserting that array...
$completeArray[] = $value;
}
}
echo '<pre>';
print_r($completeArray);
echo '</pre>';
因此,在您的情况下,您可以使用
而不是像我的示例中那样使用所有get方法,例如getCellByColumnAndRowsetCellValueByColumnAndRow($column, $row, $value);
您也可以帮助这些资源 教程here
CheatSheet here