gpt4 book ai didi

php - 使用 PHP 在 JSON 中创建空对象的最佳方法?

转载 作者:可可西里 更新时间:2023-11-01 10:46:36 25 4
gpt4 key购买 nike

要创建一个空的 JSON 对象,我通常使用:

json_encode((object) null);

将 null 强制转换为对象是可行的,但是否还有其他更好的方法和/或此解决方案有任何问题?

最佳答案

推荐方法

json_decode ("{}") 将默认返回一个 stdClass,因此使用下面的应该被认为是安全/可移植和正确的。

json_encode (new stdClass);


您的解决方案可能有效..

文档指定 (object) null 将导致一个空对象,因此有些人可能会说您的代码是有效的并且这是要使用的方法。

PHP: Objects - Manual

If a value of any other type is converted to an object, a new instance of the stdClass built-in class is created. If the value was NULL, the new instance will be empty.

.. 但是,请尽量保证它的安全!

尽管您永远不知道上述内容何时/是否会发生变化,因此如果您想 100% 确定您的编码数据中始终会以 {} 结尾,您可以使用 hack,例如:

$empty = json_decode ("{}");
$result = json_encode($empty); // "{}"

尽管它既乏味又丑陋,但我确实假设/希望 json_encode/json_decode 彼此兼容,并且始终将以下情况评估为真:

$a = <something>;

$a === json_decode (json_encode ($a));

关于php - 使用 PHP 在 JSON 中创建空对象的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50314007/

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