4

我正在将数据从 excel 导入数据表。它工作正常。但在某些领域,导入的数据带有未知字符“�”。但是excel没有这样的性格。这是我的代码。

我已经尝试了很多方法。这是我的最终代码。

$new_prod_desc = (ucfirst($data[0])." ".ucfirst($data[5])." ".ucfirst($data[1])." ".ucfirst($data[2])); $new_prod_desc = preg_replace("/&#?[a-z0-9]+;/i","",$new_prod_desc);

谢谢。

4

2 回答 2

2

这不是一个单字节字符,而是一个 UTF-8 序列ef bf bd

这里

U+FFFD  �   ef bf bd    REPLACEMENT CHARACTER

也许它正在取代一个更糟糕的角色?

如果你只是想让它消失,你可以搜索并替换字节序列。

于 2013-02-20T15:29:47.400 回答
0

首先验证excel文档是UTF-8编码的。

尝试添加功能

utf8_decode

像这样:

$new_prod_desc = utf8_decode($new_prod_desc);
于 2013-02-20T15:26:30.897 回答