我有一个osTube网站。所有文件都以UTF-8保存。使用utf8 utf8_unicode_ci创建的所有表,以及所有字段都具有相同的字符集。
添加连接数据库功能:
mysql_set_charset('utf8',$this -> connection);
该网站的内容是俄语和乌克兰语。当我打开它时,我没有任何问题。当我尝试使用无壳正则表达式时问题就开始了 - 它不起作用。
我发现,Zend Debugger显示变量内容不可读,但调试编码是UTF-8。如果我删除行:
mysql_set_charset('utf8',$this -> connection);
在网站上我看到不可读的文字,但如果我在浏览器中设置Windows-1251编码 - 文本开始可读。 Zend Debugger显示正常文本,regexp开始工作。但在浏览器中我只看到'?????'。
这是什么?
答案 0 :(得分:0)
您不清楚正在使用正则表达式的位置?在PHP中,您可以使用u
修饰符为preg扩展启用UTF-8支持。
请参阅:http://www.php.net/manual/en/reference.pcre.pattern.modifiers.php