PHP-ExcelReaderを使用して Excel ファイルからデータをインポートしようとしていますが、問題があります。ファイルは、作業中のプログラムによって生成されます。(これは非公式のプロジェクトですが、私はただの熱狂者です)
ファイルを読み取ると、データが奇妙です。通常は 4 文字である 1 つの列のセルは 2 に切り捨てられます。他のほとんどの列は、テキスト全体が存在しないことを除いて、セルが切り捨てられた場合に一貫性がないようです。Libreoffice を使用して 1 つのセルだけを編集し、同じファイルを保存してインポートすると、すべて正常に表示されます。コードは次のようなものです。
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('CP1251');
$data->read($filename);
echo "<table>\n";
for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {
echo "<tr>";
for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {
echo "<td>";
if (isset($data->sheets[0]['cells'][$i][$j])) {
echo $data->sheets[0]['cells'][$i][$j];
}
echo "</td>";
}
echo "</tr>\n";
}
echo "</table>\n";
このファイルは少なくとも 1 日に 1 回は複数のユーザーによって生成されるため、アップロードする前にファイルを保存し、編集して再保存するのは現実的ではありません。このファイルをそのままインポートする方法について何か提案はありますか?