大连仟亿科技
客服中心
  • 电话
  • 电话咨询:0411-39943997
  • 手机
  • 手机咨询:15840979770
    手机咨询:13889672791
网络营销 >更多
您现在的位置:仟亿科技 > 新闻中心 > 常见问题

UTF编码格式下字符串的比较

作者:billionnet 发布于:2012/6/3 18:33:57 点击量:

 

有两个UTF8的文本文件,前5个字符都是”uid”,可是用PHP来比较,==和strcmp都不对。十六进制下看,确实是有不同:
UTF编码格式下字符串的比较
肉眼完全无法辨别。0xFFFE2200后面多了“0xFFFE”这个字符串。原来是有名的U+FEFF. BOM

根据维基的解释,多了FFFE的这个文件实际上是个UTF-16格式。

In UTF-16, a BOM (U+FEFF) may be placed as the first character of a file or character stream to indicate the endianness (byte order) of all the 16-bit code units of the file or stream.

英文倒是好办,用匹配模式清楚杂物即可。中文的话难道要不断检测“0xFFFE”这个字符串。特别是对于不懂技术的客户来说,这可真是伤脑筋。



分享到:


评论加载中...
内容:
评论者: 验证码:
  

Copyright@ 2011-2017 版权所有:大连仟亿科技有限公司 辽ICP备11013762-1号   google网站地图   百度网站地图   网站地图

公司地址:大连市沙河口区中山路692号辰熙星海国际2215 客服电话:0411-39943997 QQ:2088827823 42286563

法律声明:未经许可,任何模仿本站模板、转载本站内容等行为者,本站保留追究其法律责任的权利! 隐私权政策声明