json对象的转换,新手求大神帮忙

WBOY
Lepaskan: 2016-06-23 14:00:45
asal
1014 orang telah melayarinya

json格式如下
   {"loginResult":{"code":"005","teamId":"1","password":"123","role":"员工","roleId":"2"}}

我用的CI框架 在models  里面定义了一个Member_Model对象,属性有code,teamId,password,role,roleId
怎样将上面的JSON数据转换成对象赋给Member_Model


回复讨论(解决方案)

$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;}
Salin selepas log masuk

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

没有过ci框架 不知道额

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

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

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

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

贴出你的代码看看




$buffer为json字符串

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

那应该怎么办

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

$member = $result['loginResult'];

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

$member = $result->loginResult;

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan