php import csv特殊字符问题

时间:2018-04-12 12:24:04

标签: php csv encoding char

我试图通过'fgetcsv()'函数在php中导入CSV,但CSV文件有一些隐藏的字符,这些字符没有显示在Excel或记事本中,我只能在浏览器控制台中看到一个字符。

enter image description here

我试图通过trim()utf8_decode()以及preg_replace()删除这些字符,但没有解决方案。

trim($value, ' \t\n\r\0\x0B\x00..\x1F\x09\0x0A');
preg_replace($value, '/[\x00-\x1F\x7F]/u', '', $value);

最后,我在以下CSV file面临问题,请提供一个解决方案,如何在导入时删除红点(。)字符。

1 个答案:

答案 0 :(得分:2)

看起来好像在文件开头有UTF8的字节顺序标记(来自https://en.wikipedia.org/wiki/Byte_order_mark)。您可以使用...

删除它
if ( substr($value,0,3) === chr(239).chr(187).chr(191))    {
    $value = substr($value, 3);
}

$value = trim($value, chr(239).chr(187).chr(191));
相关问题