在PHP5中处理Unicode的指南?

Zyd*_*eco 10 javascript php mysql unicode utf-8

大家好 我正在开发一个新站点(php5/mySQL),我期待最终获得Unicode的潮流.我承认目前对于支持Unicode几乎一无所知,但我希望在你的帮助下解决这个问题.

在拼命地展示了我对Google肌肉的微小的,可怜的借口,并且仔细阅读了看起来对我的Unicode新手眼睛有希望的每一页之后,我得出的结论是,虽然不完全支持,但我选择的宝贵语言(PHP适合那些人)那些已经忘记的事情已经至少做了一半的尝试来管理外国野兽(以及我看到的其他东西,成功了吗?).我也得出结论

<php header('Content-Type: text/html; charset=utf-8'); ?>
Run Code Online (Sandbox Code Playgroud)

是一个很好的起点,我应该考虑支持UTF-8,因为我有足够的空间(暂时共享)托管.

但是,我不确定这个奇怪的功能mb_*是什么意思,或者如何将它合并到strlen()和...说实话,我不知道其他功能(我不能没有)会受到影响.

因此,我来​​找你,寻找启蒙,并可能理解我的困惑(Unicode关注的地方!)大脑.我真的想支持它,但我需要认真的帮助.

PS:Unicode是否影响mysql_real_escape_string()或任何其他XSS预防/安全措施?我也需要保持最佳状态!

提前谢谢.

  • 添加Javascript到混合,因为我将使用纯和jQuery的混合,不知道Unicode支持+这种语言.;)

Den*_*sky 5

  1. 欢迎登机utf8 :)
  2. 您应该使用mb_*函数代替传统的str*函数
  3. MySQL及其API长期以来一直支持utf8,这是 在保存数据和连接时使用编码的唯一要求.谷歌'SET NAMES utf8'
  4. 注意preg_*函数的'u'修饰符,告诉它们使用unicode模式.

  • PS你的源代码文件应该是utf8没有BOM,因为它在PHP启动之前就会输出并导致令人痛苦的奇怪的"已发送标题"问题. (2认同)