Compilation failed: invalid UTF-8 string at offset 6 in /tmp/aiezu.com.php on line 2
当我们通过下面代码、使用正则表达式期望将字符串中的非汉字替换为空,这时收到一条警告信息:
原来正则表达式中的"\x"后的UTF8编码,必须使用大括号括起来才行,如下:
<?php echo preg_replace("#[^\x4e00-\x9fa5]#u", "", '爱E族:aiezu.com');警告信息:
PHP Warning: preg_replace(): Compilation failed: invalid UTF-8 string at offset 6 in /tmp/aiezu.com.php on line 2这时如何解决呢?
原来正则表达式中的"\x"后的UTF8编码,必须使用大括号括起来才行,如下:
<?php echo preg_replace("#[^\x{4e00}-\x{9fa5}]#u", "", '爱E族:aiezu.com'); //输出: 爱族