それぞれが Excel ファイルを含む何百ものフォルダーをスキャンしようとしています。
簡略化されたワークフローは次のとおりです
- フォルダをループでスキャン
- 最初のフォルダー名を取得し、正規表現を使用して実行します(名前から情報を取得するため)
- フォルダを開き、内部のExcelファイルを開きます
- Excelファイルをスキャンして情報を取得します(PHPExcelを使用)
- すべてをデータベースに保存
わかりましたので、破損したExcelファイルに遭遇した場合を除いて、これはすべて正常に機能しています。
問題は、PHPEXCEL ライブラリがそれを読み取ることができず、「Notice: Undefined offset:」を返し、これがforeachループを壊すことです。
だからここに私が探しているものがあります: どういうわけかエラーや通知をスキップして、次のフォルダーとファイルを続行する方法です。
方法はありますか?助けてくれてありがとう。
わかりましたので、ここに foreach ループがあります:
foreach ($inputFileName as $key => $fileName) {
$objReader = PHPExcel_IOFactory::load($fileName);
$activeSheet = $objReader->getActiveSheet()->toArray(null,false,true,false);
echo "<pre>";
echo $key;
echo "</pre>";
}