gpt4 book ai didi

php - 如何在 Doctrine 中编码 JSON 数组?

转载 作者:行者123 更新时间:2023-12-05 03:15:18 27 4
gpt4 key购买 nike

如何在 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/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com