辰凌风

"Forget What Made Them Successful " Trap

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

最近在编写一个php调用接口的程序。

由于对php不熟。使用对方接口返回的数据的格式为:

{"resultCode":"304", "email":"该邮箱已经存在!"}

这个数据格式一看就是json么。

于是二话不说 json_decode转换回来。

$result = json_decode($html);

但一开始正常,后来对方不知道做了什么修改,还是我这边除了什么问题导致json_decode转换后系统报错。错误信息如下:

Fatal error: Cannot use object of type stdClass as array

没办法,只能将转换后的对象打印出来:

object(stdClass)[21]
  public 'resultCode' => string '301' (length=3)
  public 'email' => string '邮箱为空!' (length=13)

 这下伤神了object 对象stdClass。 由命名可以看出是一个标准类。所以应该是转换的地方缺少参数啥的。经过一番查找。最后的解决方案其实很简单:

$result = json_decode($html,true);

  在转换函数中,加上 第二个参数true,即可;

 

 

posted on 2013-01-05 14:12  辰凌风  阅读(682)  评论(0编辑  收藏  举报
忒客淘-我的站