ホームページ  >  記事  >  バックエンド開発  >  PHPExcel プラグインを使用中 zip ファイルのアップロードファイル/EasyA を閉じることができませんでした

PHPExcel プラグインを使用中 zip ファイルのアップロードファイル/EasyA を閉じることができませんでした

WBOY
WBOYオリジナル
2016-06-23 13:29:493175ブラウズ

CI フレームワークで使用される phpexcel プラグインはサーバー上で使用できます (以前に他の人が作成したもの) が、同じコードはローカルでは機能せず、次のようなエラーが発生します:
致命的なエラー: キャッチされない例外 'Exception ' メッセージ「zip ファイル Uploadfiles/EasyADReport-5590e7006ebed-fixed Position scheduling-20150722101220.xlsx を閉じることができませんでした。」D:svnsmartAdtrunkapplicationlibrariesPHPExcelWriterExcel2007.php:380 スタック トレース: #0 D:svnsmartAdtrunkapplicationcontrollers reportquery.php(91) 5): PHPExcel_Writer_Excel2007-> ;save( 'uploadfiles/Eas...') #1 [内部関数]: Query->Excel() #2 D:svnsmartAdtrunksystemcoreCodeIgniter.php(359): call_user_func_array(Array, Array) #3 D:svnsmartAdtrunkindex.php (294) : require_once('D:svnsmartAd...') #4 {main} が D:svnsmartAdtrunkapplicationlibrariesPHPExcelWriterExcel2007.php の 380 行目でスローされました
win7 システムを使用して解決方法を専門家に聞いてください


返信ディスカッション (解決策)

致命的なエラー: キャッチされない例外「例外」とメッセージ「zip ファイルを閉じることができません

ウイルス ファイアウォールがファイルを開いた可能性があります

1. 権限の問題

2. 中国語名の問題

致命的なエラー: キャッチされない例外 '例外' とメッセージ「ZIP ファイルを閉じることができません

致命的エラー: キャッチされない例外 例外メッセージ「ZIP ファイルを閉じることができません

はあなたのものかもしれません」ウイルス ファイアウォールによってファイルが開かれました


私の唯一のファイアウォール Symantec Endpoint Protection が無効になっており、コンピュータを再起動しても機能しません

1. 権限の問題

2. 中国語名の問題


中国語名は問題ありません。 , サーバーからダウンロードできます。 。 。プロジェクトのフォルダー権限を確認したところ、読み取り、書き込み、変更、実行権限がありました

1. 権限の問題
2. 中国語名の問題


中国語名は問題ありません。サーバ。 。 。プロジェクトのフォルダーのアクセス許可を確認しました。すべてのユーザーに読み取り、書き込み、変更のアクセス許可がありますか?
今日、チームのリーダーが答えを見つけるのを手伝ってくれました。ここでの問題は、エクスポート時に発生する問題が原因です。Linux では存在しませんが、Windows ではエクスポートが gbk 形式であるため、エクスポート中に中国語の文字が含まれる場合、エクスポートできないポップアップが表示されます。閉じるべきものは文字化けです。正しいコードは、save メソッドの部分です
$path='uploadfiles/';                $output['url']=$path.'EasyADReport-'.$args['plan'].'-'.mb_convert_encoding($arrPlan['name'],'gbk','UTF-8').'-'.date('YmdHis').'.xlsx';                $output['url1']=$path.'EasyADReport-'.$args['plan'].'-'. $arrPlan['name'].'-'.date('YmdHis').'.xlsx';                                $objWriter=PHPExcel_IOFactory::createWriter($this->phpexcel,'Excel2007');                $objWriter->save($output['url']);                //$output['url']=$this->config->config['base_url'].$output['url'];                $output['url']=$this->config->config['base_url']. $output['url1'];


通常、gbk は Windows で使用されます。2 行目を次のように置き換えることをお勧めします。

通常 Windows で使用されます。gbk の 2 行目を次のように置き換えてみてはいかがでしょうか。 !

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。