Cakephp を使用して、Excel シート (私は Libre Office を使用しています) から読み取っていますが、日付が正しく変換されません。
PHPスプレッドシートExcelリーダーを使用して、Excelシートをデータベースにインポートしています。
Excelシートで指定された日付を変換する関数を使用していません。
Excel シートでは、この 04/10/2013 のように指定した日付がこの形式 (AprApr/WedWed/2013201320132013) に変換されます。Excelシートで指定した正確な日付が必要です。
ここにもコードを追加しています:
$excel = new Spreadsheet_Excel_Reader(WWW_ROOT . 'files/excel/' . $this->request->data['Request']['file_name'], true);
$excel->setUTFEncoder('iconv');
$excel->setOutputEncoding('UTF-8');
$excel->read(WWW_ROOT . 'files/excel/' . $this->request->data['Request']['file_name']);
$x = 2;
$sep = ",";
ob_start();
while ($x <= $excel->sheets[0]['numRows']) {
$y = 1;
$row = "";
while ($y <= $excel->sheets[0]['numCols']) {
echo $excel->sheets[0]['cells'][$x][4];
$cell = isset($excel->sheets[0]['cells'][$x][$y]) ? $excel->sheets[0]['cells'][$x][$y] : '';
$row.=($row == "") ? "\"" . $cell . "\"" : "" . $sep . "\"" . $cell . "\"";
$y++;
}
echo $row . "\n";
$x++;
}
$fp = fopen(WWW_ROOT . "files/excel/data.csv", 'w');
fwrite($fp, ob_get_contents());
fclose($fp);
ob_end_clean();
$filehandle = fopen(WWW_ROOT . "files/excel/data.csv", "r");
fgetcsv($filehandle, 1000, ",");
while (($data = fgetcsv($filehandle, ",")) !== FALSE) {
pr($data);
}
助けてください!!!前もって感謝します