From cf2274753ce81f4d4861b4258f711422f29ebaf1 Mon Sep 17 00:00:00 2001 From: Alan Knowles Date: Fri, 22 Feb 2013 11:18:22 +0800 Subject: [PATCH] SimpleExcel.php --- SimpleExcel.php | 77 +++++++++++++++++++++++++------------------------ 1 file changed, 39 insertions(+), 38 deletions(-) diff --git a/SimpleExcel.php b/SimpleExcel.php index 86be1d7a..ee527f32 100644 --- a/SimpleExcel.php +++ b/SimpleExcel.php @@ -254,55 +254,56 @@ class Pman_Core_SimpleExcel extends Pman } - function addLine($worksheet_name, $data) + function addLine($worksheet_name, $clo) { $cfg = $this->workSheetCfg[$worksheet_name]; $start_row = &$this->start_row; - foreach($data as $r=>$clo) { - $cl = $clo; - if (is_object($clo)) { - $cl = (array)$clo; // lossless converstion.. - } + $r = 0; + + $cl = $clo; + if (is_object($clo)) { + $cl = (array)$clo; // lossless converstion.. + } + + if (isset($cfg['row_height'])) { + $worksheet->setRow($start_row +$r, $cfg['row_height']); + } + + foreach($cfg['cols'] as $c=>$col_cfg) { - if (isset($cfg['row_height'])) { - $worksheet->setRow($start_row +$r, $cfg['row_height']); + if(isset($cl[$col_cfg['dataIndex']])){ + $v = $cl[$col_cfg['dataIndex']]; + }else{ + if(isset($col_cfg['fillBlank'])){ + $worksheet->write($start_row+$r, $c, '', $formats[$col_cfg['fillBlank']]); + } + continue; } - foreach($cfg['cols'] as $c=>$col_cfg) { - - if(isset($cl[$col_cfg['dataIndex']])){ - $v = $cl[$col_cfg['dataIndex']]; - }else{ - if(isset($col_cfg['fillBlank'])){ - $worksheet->write($start_row+$r, $c, '', $formats[$col_cfg['fillBlank']]); - } - continue; - } - - if (empty($cl[$col_cfg['dataIndex']])) { - continue; - } - if (isset($col_cfg['txtrenderer'])) { - $v = call_user_func($col_cfg['txtrenderer'], - $cl[$col_cfg['dataIndex']], $worksheet, $r+1, $c, $clo); - if ($v === false) { - continue; - } - // var_dump($v); - } - if (isset($col_cfg['renderer'])) { - $hasRender = true; + if (empty($cl[$col_cfg['dataIndex']])) { + continue; + } + if (isset($col_cfg['txtrenderer'])) { + $v = call_user_func($col_cfg['txtrenderer'], + $cl[$col_cfg['dataIndex']], $worksheet, $r+1, $c, $clo); + if ($v === false) { continue; } - - $v = @iconv('UTF-8', 'UTF-8//IGNORE', $v); - - $format = isset($col_cfg['format']) ? $formats[$col_cfg['format']] : false; - - $worksheet->write($start_row+$r, $c, $v, $format); + // var_dump($v); + } + if (isset($col_cfg['renderer'])) { + $hasRender = true; + continue; } + + $v = @iconv('UTF-8', 'UTF-8//IGNORE', $v); + + $format = isset($col_cfg['format']) ? $formats[$col_cfg['format']] : false; + + $worksheet->write($start_row+$r, $c, $v, $format); } + $this->start_row++; } -- 2.39.2