PHPEXCEL如何使用特殊字符获取单元格值

当我使用函数getValue()获取单元格值时,如果单元格包含特殊字符,则返回false,是否有解决scheme来获取内容,即使包含非UTF-8字符? 我正在调用getValue()函数之前parsing它们。 我将不胜感激任何forms的帮助。

$objPHPExcel = $objReader->load($filename); $objWorksheet = $objPHPExcel->getActiveSheet(); $i=0; $record = array(); foreach ($objWorksheet->getRowIterator() as $row) { $cellIterator = $row->getCellIterator(); $cellIterator->setIterateOnlyExistingCells(false); foreach ($cellIterator as $cell) { $val = $cell->getValue(); // $val returns false or empty string ('') when the cell has special characters like ñ or another one $record[$i][] = $val; } $i++; if($i==$vueltas ) return $record; } return $record; } 

我尝试用utf8_decode函数和str_replace来parsing特殊字符,但没有发生,它仍然返回false。 我认为这是一个读者的问题,但我找不到pipe理它的代码。

谢谢您的帮助!

我解决了这个问题补充:

 $objReader = PHPExcel_IOFactory::createReader('CSV'); $objReader->setInputEncoding('ISO-8859-1'); 

这是头字符集信息的问题。

感谢Mark Ba​​ker的帮助!