str_replace为utf8字符串

时间:2012-05-20 21:44:39

标签: php string

str = "asd€aaa";

$str = str_replace("€","",$str);

由于某种原因没有替换€符号。

我在文件顶部设置mb_internal_encoding("UTF-8");(以UTF-8保存)。

字符串源自MySQL数据库,所以我也有这些设置:

mysql_set_charset('utf8',$conn);
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET COLLATION_CONNECTION = 'utf8_unicode_ci'");

我错过了什么吗?

谢谢,

1 个答案:

答案 0 :(得分:4)

这意味着来自数据库的字符串和搜索字符串不是相同的编码,因此不会被识别为相同的字符。确保您的源代码文件也以UTF-8保存。