PHPでExcelファイルで時間を読み込むと値がおかしくなる。

PHPのプログラムからExcelファイルに時間がセルにあると、正しい値が読み込むことができません。

使ったPHPのExcelファイルを読み込むライブラリは、Spreadsheet_Excel_ReaderとPHPExcel。どちらもダメ。ソースを追ってみたがわからない。03:00と時間を読み込むと、0.125になる。Excelで書式を変えてみると、0:febfeb:になってしまう。何か、ライブラリ側で書式の設定があるかも。

仕方ないので、Excelファイル側で書式を文字列にしてもらうことにする。後で解決策があれば、変更しましょう。

Spreadsheet_Excel_Readerは、セルに何も値を格納していなければ、PHPで取り出した配列には何も出てこないのね。nullか空白文字を期待してアクセスすると変数の未定義エラーになる。Spreadsheet_Excel_Readerクラスのvalメソッドを使わなければいけない。配列を追っていくときには注意。

後、Excelのブック内のシート数はどこにも格納されていないのね。いろいろと使いにくいところがある。