"element1", "b" => "element2"); echo json_en-6ren">
gpt4 book ai didi

javascript - 如何从 PHP 数组返回 JavaScript 对象?

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

如果我定义一个数组并使用 json_encode() 对其进行编码

$array = array("a" => "element1", "b" => "element2");
echo json_encode($array);

我明白了

{"a":"element1","b":"element2"}

这是正确的 JSON。不过我对以下输出感兴趣:

{a:"element1",b:"element2"}

有没有办法在 PHP 5.2 中实现这一点还是我应该自己实现?

编辑:由于人们开始投票并评论说我想要的输出不是正确的 JSON,让我指出问题是“JavaScript 对象”而不是“JSON”。我正在使用的系统需要我描述的格式,遗憾的是我无法更改它。

最佳答案

好吧,如果您绝对必须使用您指定的无效格式,则必须编写自己的函数来执行此操作。当然,这确实不推荐,您应该改进 JS 代码来解析返回的 JSON 字符串,而不是强制 PHP 输出无效的输出。

这是一个简单的函数,应该可以实现您正在寻找的功能(至少对于给定的示例数组 - 如果您正在使用多维数组,则需要修改它):

function custom_json_encode( $arr )
{
$len = count($arr);
$i = 1;
$json = '{';

foreach( $arr as $key => $val )
{
$json.= $key.':"'.$val.'"';
$json.= ($i < $len) ? ',' : '';
$i++;
}

$json.= '}';

return $json;
}

返回示例:

{a:"element1",b:"element2"}

Demo

关于javascript - 如何从 PHP 数组返回 JavaScript 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38683138/

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