###PHPExcelにて、日付がシリアル値で取得されてしまう
とあるサイトのコードを参考に(参考元)作ってみましたが、日付型がシリアル値になってしまいます。
このシリアル値を日付に戻すというプログラム自体は分かりそうなのですが、読み込み時に日付型で取得したいです。
なぜシリアル値で取得されてしまい、どのようにすれば日付型で取得できるのか
###該当のソースコード
php
1for ($i = 0; $i < $xlsObject->getSheetCount(); $i++) { 2 $xlsObject->setActiveSheetIndex($i); 3 $xlsSheet = $xlsObject->getActiveSheet(); 4 #-- シート名 5 $sheets[$i]['title'] = $xlsSheet->getTitle(); 6 7 $j = 0; 8 #-- シートの行ごとに読んでいく 9 foreach ($xlsSheet->getRowIterator() as $row) { 10 $xlsCell = $row->getCellIterator(); 11 $xlsCell->setIterateOnlyExistingCells(true); 12 13 $k = 0; 14 #-- 行のセルごとに読んでいく 15 foreach ($xlsCell as $cell) { 16 #-- 「シート名・行番号・セル番号」の連想配列にセル内のデータを格納 17 $sheets[$i]['sheet'][$j][$k] = $cell->getCalculatedValue(); 18 $k++; 19 } 20 $j++; 21 } 22}
###試したこと
よくわからずにですね…getCalculatedValueをgetVauleに変更したりしましたけど関係なさそうです。
###補足情報
php
1$xlsObject->getActiveSheet()->toArray(null,true,true,true);
では日付型で取得できますが、空白セルなど冗長になるのでこの手段は今のところ検討していません

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/26 04:36