Я пытаюсь сгенерировать лист распространения MS Excel с использованием PHPExcel 1.7.6. У меня возникли проблемы с определением структуры ожидаемого массива.Структура массива PHP
Код, который создает столбцы и строки следующим образом:
function _headers() {
$i=0;
foreach ($this->data[0] as $field => $value) {
if (!in_array($field,$this->blacklist)) {
$columnName = Inflector::humanize($field);
$this->sheet->setCellValueByColumnAndRow($i++, 4, $columnName);
}
}
$this->sheet->getStyle('A4')->getFont()->setBold(true);
$this->sheet->getStyle('A4')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
$this->sheet->getStyle('A4')->getFill()->getStartColor()->setRGB('969696');
$this->sheet->duplicateStyle($this->sheet->getStyle('A4'), 'B4:'.$this->sheet->getHighestColumn().'4');
for ($j=1; $j<$i; $j++) {
$this->sheet->getColumnDimension(PHPExcel_Cell::stringFromColumnIndex($j))->setAutoSize(true);
}
}
function _rows() {
$i=5;
foreach ($this->data as $row) {
$j=0;
foreach ($row as $field => $value) {
if(!in_array($field,$this->blacklist)) {
$this->sheet->setCellValueByColumnAndRow($j++,$i, $value);
}
}
$i++;
}
}
В настоящее время я получаю «Недействительного аргумента для Еогеаспа()» ошибки.
Буду признателен, если кто-то может наметить правильную структуру массива.
Ваше сообщение об ошибке предполагает, что $ this-> data [0] не является массивом, начните отладку, попробовав print_r ($ this-> data [0]) – IsisCode