我正在使用PHP-Excel-Reader库来阅读一些XLS文件并立即遇到此问题:
PHP注意:
iconv()
[function.iconv]:在第1718行的C:\ web \ docs \ housing \ excel_reader2.php中的输入字符串中检测到不完整的多字节字符
有问题的一行是:
$result = iconv('UTF-16LE', $this->_defaultEncoding, $string);
之前我已经添加了一些调试信息来帮助诊断问题:
var_dump($string); // string(10) "A�r�i�a�l�"
echo bin2hex($string) . "\n"; // 41007200690061006c00
echo $this->_defaultEncoding . "\n"; // UTF-8
我尝试将_defaultEncoding
更改为任意数量的随机字符集,但显然没有帮助。
如果有人有任何线索,请提供帮助!
答案 0 :(得分:3)
我意识到这是一篇旧帖子,但要检查的一件事是你的excel文件中是否有任何链接。我遇到了完全相同的问题,它通过从excel文件中删除任何超链接来解决。
答案 1 :(得分:1)
因为这是一个警告你可能会忽略它试试这个:
$ result = @iconv('UTF-16LE',$ this-> _defaultEncoding,$ string);
答案 2 :(得分:0)
尝试:
$result = iconv('UTF-16LE', $this->_defaultEncoding . "//IGNORE", $string);