json序列化-j9九游

版本 新增功能
5.0.10 增加removerelation方法去除所有的关联属性
5.0.5 hiddenvisibleappend方法支持关联属性
5.0.4 增加appendrelationattr方法追加关联模型的属性

可以调用模型的tojson方法进行json序列化

$user = user::get(1);
echo $user->tojson();

可以设置无需输出的字段,例如:

$user = user::get(1);
echo $user->hidden(['create_time','update_time'])->tojson();

或者追加其它的字段:

$user = user::get(1);
echo $user->append(['status_text'])->tojson();

设置允许输出的属性:

$user = user::get(1);
echo $user->visible(['id','name','email'])->tojson();

模型对象可以直接被json序列化,例如:

echo json_encode(user::get(1));

输出结果类似于:

{"id":"1","name":"","title":"","status":"1","update_time":"1430409600","score":"90.5"}

或者也可以直接echo 一个模型对象,例如:

echo user::get(1);

输出的结果和上面是一样的。

追加关联模型的属性(v5.0.4 )

v5.0.4 版本开始,支持追加一对一关联模型的属性到当前模型,例如:

$user = user::find(1);
echo $user->appendrelationattr('profile',['email','nickname'])->tojson();

profile是关联定义方法名,emailnicknameprofile模型的属性。

文档最后更新时间:2018-04-26 10:08:59
网站地图