作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在 Doctrine 中将数组转换为 JSON?
到目前为止我已经试过了。这是我的代码:
require_once ("../Users.php");
require_once("../../test/doctrine/cli-config.php");
require_once "../../test/doctrine/bootstrap.php";
$user_list = array();
$usersRepository = $entityManager->getRepository('Users');
$users = $usersRepository->findAll();
echo "<pre>";
print_r($users);
foreach ($users as $user)
{
$user_list[] = array('user_list'=>$user);
}
json_encode($user_list)
print_r() 部分返回给我:
Array
(
[0] => Users Object
(
[id:Users:private] => 1
[lastName:Users:private] => User1
[firstName:Users:private] => Test1
[city:Users:private] => ABC
[country:Users:private] => XYZ
[email:Users:private] => user1@yahoo.com
)
[1] => Users Object
(
[id:Users:private] => 2
[lastName:Users:private] => User2
[firstName:Users:private] => Test1
[city:Users:private] => ABC
[country:Users:private] => XYZ
[email:Users:private] => user2@yahoo.com
)
)
[{"user_list":{}},{"user_list":{}}]
请参阅 Json 响应为空。谁能帮我解决这个问题?
最佳答案
您的实体中没有公共(public)属性...这就是您得到空 json 的原因。
我正在为此目的使用 EntitySerializer
您的案例的用法应该是:
$eSerializer = new Bgy\Doctrine\EntitySerializer($entityManager);
$result = $eSerializer->toArray($users);
但这只是个人喜好。您可以并且应该使用标准 Serializer class of Symfony framework
关于php - 如何在 Doctrine 中编码 JSON 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19534596/
我是一名优秀的程序员,十分优秀!