str_replace的问题

时间:2012-04-04 13:02:00

标签: php xml wordpress str-replace

首先,从XML文件中提取字符串。

我想替换一个特殊角色:'£'

当我像这样使用str_replace时:

$ability1 = str_replace("£", "", $ability);

这就是var_dump显示的内容:

string(138) "Argothian Pixies can't be blocked by artifact creatures.�Prevent all damage that would be dealt to Argothian Pixies by artifact creatures."

一旦传递$ ability1并且wordpress将其插入帖子中。这就是结果。

Argothian Pixies can’t be blocked by artifact creatures.

删除 字符后的所有内容。

当它应该是“”时,为什么要改为 。我不太确定我缺少什么

3 个答案:

答案 0 :(得分:2)

确保字符串使用正确的编码,尝试encodingdecoding到UTF8,然后应用str_replace。

答案 1 :(得分:1)

XML文件是如何编码的?我怀疑它可能是UTF-8。在这种情况下,你需要看到一个函数,如utf_decode()来在你的代码中正确处理它(假设你的代码是ANSI)

答案 2 :(得分:1)

也许你的字符串是UTF-8? PHP。你必须做这样的事情:

$ability1 = utf8_decode($ability);
$ability1 = preg_replace("/[£ ]/","", $ability1);
$ability1 = utf8_encode($ability1);