X-Git-Url: http://git.roojs.org/?p=Pman.Core;a=blobdiff_plain;f=ExcelToJson.php;h=e981d32901cb7910e25123b2dcd4a4f95dc6b694;hp=88fa435fd66cd4eea43f662df3566767a4ab4398;hb=refs%2Fheads%2Fwip_edward_T5851_download_old_offer_sheet;hpb=9ef9856b794bc6c67252813ad4abb80fcf5f1b87 diff --git a/ExcelToJson.php b/ExcelToJson.php index 88fa435f..e981d329 100644 --- a/ExcelToJson.php +++ b/ExcelToJson.php @@ -12,7 +12,7 @@ class Pman_Core_ExcelToJson extends Pman_Roo return parent::getAuth(); } - function post() + function post($v) { $this->transObj = DB_DataObject::Factory('invhist_transfer'); @@ -29,13 +29,16 @@ class Pman_Core_ExcelToJson extends Pman_Roo require_once 'File/Convert.php'; $fc = new File_Convert($img->getStoreName(), $img->mimetype ); - $csv = $fc->convert('text/csv'); - $data = $this->importCsv($this->walkrows($csv)); - $this->jdata($data); + $csv = $fc->convert('text/csv'); + $ret = $this->importCsv($csv); + + + + $this->jdata($ret['data'], false, isset($ret['extra']) ? $ret['extra'] : array() ); } - function walkrows($csv) + function importCsv($csv) { ini_set("auto_detect_line_endings", true); @@ -48,10 +51,12 @@ class Pman_Core_ExcelToJson extends Pman_Roo $cols = false; $header = false; $rows = array(); - $ret = array(); + $extra = array(); while(false !== ($n = fgetcsv($fh,10000, ',', '"'))) { - if(!array_filter($n)){ + + + if(!strlen(trim(implode('', $n)))){ // blank line; if ($header) { continue; } @@ -60,7 +65,7 @@ class Pman_Core_ExcelToJson extends Pman_Roo } if(!$header){ - $ret[preg_replace(array('/\s/', '/\:/'), '', $n[0])] = $n[1]; + $extra[preg_replace(array('/\s/', '/\:/'), '', $n[0])] = $n[1]; continue; } @@ -86,6 +91,8 @@ class Pman_Core_ExcelToJson extends Pman_Roo } fclose($fh); - return array('ret' => $ret, 'rows' => $rows);; + + + return array('extra' => $extra, 'data' => $rows);; } } \ No newline at end of file