php取得json前面有乱码

需要在两个服务器之间通信,但返回结果为json

{"time":1442049120,"content":"\u54c8\u54c8\u54c8\u54c8\u54c8\u54c8\u54c8","validTime":10}

直接访问服务器端服务器看是ok的
但是在客户端服务器var_dump返回值发现成了

string '锘縶"time":1442049350,"content":"\u54c8\u54c8\u54c8\u54c8\u54c8\u54c8\u54c8","validTime":10}' (length=92)

后来发现是返回的字符串前面有一个BOM导致的
去除BOM函数如下(参考http://www.111cn.net/phper/php-cy/55606.htm)

function removeBOM($str = '')
{
   if (substr($str, 0,3) == pack("CCC",0xef,0xbb,0xbf)) {
       $str = substr($str, 3);
   }
   return $str;
}

标签: php

添加新评论