phpexcel 致命錯誤: Class 'PHPExcel_Reader_Csv' not found及上傳csv文件漢字空白問題

linux出現(xiàn)Class 'PHPExcel_Reader_Csv' not found

在不得已之下還是需要滿足csv文件上傳的,現(xiàn)在針對遇到的“Class 'PHPExcel_Reader_Csv' not found”問題給出解決方案!(點上小愛心哦)

首先我也是百度了好久,大部分都是”Call to undefined method PHPExcel_Reader_CSV::setLineEnding ()“這樣的錯誤,如果你看過我的phpexcel 導(dǎo)入、導(dǎo)入這篇文章,你會發(fā)現(xiàn)如下代碼:

$objReader = \PHPExcel_IOFactory::createReader('CSV')
->setDelimiter(',')
->setInputEncoding('GBK')
->setEnclosure('"')
// ->setLineEnding("\r\n") //這一行就是導(dǎo)致出現(xiàn)”Call to undefined method PHPExcel_Reader_CSV::setLineEnding ()“問題,注釋掉即可。
->setSheetIndex(0);

上傳csv為什么漢字空白呢?

$objReader = \PHPExcel_IOFactory::createReader('CSV') ; //初始寫的時候就這么一行,但是通過百度加上后半段代碼,空白問題解決了。(沒有去深度學(xué)習(xí)這幾個參數(shù)的意思,你要加油襖?。?!)
->setDelimiter(',')
->setInputEncoding('GBK')
->setEnclosure('"')
->setSheetIndex(0);

重點開了,Class 'PHPExcel_Reader_Csv' not found這個錯誤是怎么回事呢?
首先我是這么做的,因為他報的錯誤”PHPExcel_Reader_Csv“,我覺得和”createReader“這個方法有問題

$objReader = \PHPExcel_IOFactory::createReader('CSV');

找到”createReader“方法后,下面是PHPExcel的代碼,他遍歷了自身的”searchLocations“變量,而且還有”type“,一看就是類型嘛!??!

public static function createReader(readerType = '') { // Search typesearchType = 'IReader';

   // Include class
   foreach (self::$searchLocations as $searchLocation) {
       if ($searchLocation['type'] == $searchType) {
           $className = str_replace('{0}', $readerType, $searchLocation['class']);

           $instance = new $className();
           if ($instance !== null) {
               return $instance;
           }
       }
   }
既然和類型有關(guān)系,我就找到了

private static $autoResolveClasses = array(
'Excel2007',
'Excel5',
'Excel2003XML',
'OOCalc',
'SYLK',
'Gnumeric',
'HTML',
'CSV',
);

解決辦法:就是把$objReader = \PHPExcel_IOFactory::createReader('Csv')中的Csv換成大寫就ok了,哈哈!?。?/h5>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容