Linux上にapacheでWebサーバーを立ててphpExcelを用いてxlsxファイルを作成しているのですが、
稀にxlsxファイルが作成ができない問題が発生してしまいます。
サーバーの再起動で正常の動作に戻ります。
apacheのエラーログにも該当のエラーは見られませんでした。
問題が発生時は指定のフォルダには、テスト($noの値).xlsx.(ランダムな文字列)の0バイトの不明なファイルが作成されていました。
また、PHPExcel.phpがあるURLを直接叩いても、通常ではホワイトアウトとなるのですが、問題が発生している時は、Not Foundとなります。
このような症状をネットで探したのですが、原因が分かりません。
どのようなことが考えられるでしょうか。
//メモリの上限を上げる ini_set('memory_limit', '1024M'); require_once(dirname(__FILE__) . '/PHPExcel/Classes/PHPExcel.php');//PHPExcelの読み込み require_once(dirname(__FILE__) . '/PHPExcel/Classes/PHPExcel/IOFactory.php');////PHPExcelの読み込み2 //return ファイルの保存が完了でファイルを保存したパス function excelSave($no){ try{ //(xlsx)テンプレートの読み込み $reader = PHPExcel_IOFactory::createReader('Excel2007'); $reader->setIncludeCharts(TRUE); $excel = $reader->load( dirname(__FILE__) . '/PHPExcel/test.xlsx' ); $excel->getActiveSheetIndex(0); $aSheet = $excel->getActiveSheet(); : ://省略 : $writer = PHPExcel_IOFactory::createWriter($excel, 'Excel2007'); $writer->save("ExCache/".mb_convert_encoding('テスト'.$no, 'UTF-8', 'UTF-8').'.xlsx'); return mb_convert_encoding('テスト'.$no, 'UTF-8', 'UTF-8').'.xlsx'; }catch(Exception $e){ exit($e."error!! Excel Create. error"); } return -1; }
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/09/16 01:44
2017/09/27 09:23