解决方案 »

  1.   

    $json = '{"loginResult":{"code":"005","teamId":"1","password":"123","role":"员工","roleId":"2"}}';
    $arr = json_decode($json);
    $mm = new Member_Model();
    foreach ($arr->loginResult as $key => $value) {
    $mm->$key = $value;
    }
      

  2.   

    $s='{"loginResult":{"code":"005","teamId":"1","password":"123","role":"员工","roleId":"2"}}';
    $o = json_decode($s);
    print_r($o->loginResult);
      

  3.   

    一定要用foreach来遍历吗,没有别的方法了吗,可不可以向C#那样直接把json转换成对象在直接赋值。
      

  4.   

    这样遍历是因为知道了json数据里面的数据顺序,那如果不知道json的数据顺序那怎么知道数组的哪个元素赋给对应的哪个属性。那这样就还要在foreach里面对key进行判断才赋值,这样太麻烦了吧。这返回的json还只是一个单独的对象,如果是一个对象列表那不是更麻烦。有没有更简单的方法,求一个更简单的处理方法。
      

  5.   

    $o->loginResult 不就是你要的对象吗
      

  6.   

    $o->loginResult  错误
    trying to  get property of non-object
      

  7.   

    你有 $result = json_decode($buffer, true);
    $result 已然是数组了
    你再按对象方式访问 $member = $result->LoginResult;
    嫩恶搞不出错吗?
      

  8.   

    如果是
    $result = json_decode($buffer, true);

    $member = $result['loginResult'];如果是
    $result = json_decode($buffer);

    $member = $result->loginResult;