【发布时间】:2016-05-22 18:18:02
【问题描述】:
我有一个对象数组,我想将它作为 JSON 返回到客户端的浏览器。
将数组解析为JSON的代码如下:
public static function parse(array $data){
$parsed = array();
foreach ($data as $entity){
$reflection = new \ReflectionClass($entity);
$arrayObject = array();
foreach($reflection->getProperties() as $property){
$property->setAccessible(true);
$arrayObject[$property->getName()] = $property->getValue($entity);
$property->setAccessible(false);
}
array_push($parsed, $arrayObject);
}
$parsed = json_encode($parsed);
return $parsed;
}
我正在使用这种静态方法,因为当比例不公开时,简单地将对象转换为数组会为我提供空字节键。到目前为止一切正常,我正在尝试使用 JsonModel 返回已解析的数组。
return new JsonModel(
array(
'data' => ObjectToJsonParser::parse($match)
));
在 Firebug 中,我收到了正确的 JSON 响应,但包含 Unicode 符号的内容是错误的。
【问题讨论】:
标签: php json unicode zend-framework2