我正在尝试JSON编码PHP中的一些对象,但我遇到了一个问题:我想编码由类私有成员保存的数据.我发现这段代码通过调用一个编码函数来编码这个对象:
public function encodeJSON()
{
foreach ($this as $key => $value)
{
$json->$key = $value;
}
return json_encode($json);
}
Run Code Online (Sandbox Code Playgroud)
但是,这只适用于我想编码的对象内部不包含其他对象的情况.我怎么能不仅编码"外部"对象,还编码任何作为对象的成员?
我正在返回从ORM中提取的对象数组的json_encode().它包含许多具有空值的属性.删除这些null属性的最佳方法是什么?我想我可以迭代属性,看看它们是否为null然后取消设置()该属性,但肯定必须有更优雅的方式?