"value 2"-6ren">
gpt4 book ai didi

php - 如何让 Zend_JSON 创建对象而不是数组

转载 作者:搜寻专家 更新时间:2023-10-31 21:14:22 25 4
gpt4 key购买 nike

我使用 zend 的 JSON 助手,但我遇到了问题......当我使用这段代码时:

$this->_helper->json(array(1 => "value 1", 2 => "value 2"));

我得到一个对象:

{1: "value 1", 2: "value 2" }

但是如果键是以“0”开头的序列,我得到一个数组。例如,使用:

$this->_helper->json(array(0 => "value 0", 1 => "value 1"));

我得到一个数组:

["value 0", "value 1"]

我怎样才能每次使用这个方法都得到一个对象? (我想要第二个示例中的结果 {0: "value 0", 1: "value 1"})。

最佳答案

你可以强制它成为一个对象

<?php
$arr = array(1 => "value 1", 2 => "value 2");

$x = json_encode($arr);
var_dump($x);

//use this to force to be an object
$y = json_encode(array(0 => "value 1", 1 => "value 2"), JSON_FORCE_OBJECT);
var_dump($y);

// how it is
$z = json_encode(array(0 => "value1", 1 => "value 2" ));
var_dump($z);
?>

给予

string(29) "{"1":"value 1","2":"value 2"}"
string(29) "{"0":"value 1","1":"value 2"}"
string(20) "["value1","value 2"]"

关于php - 如何让 Zend_JSON 创建对象而不是数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12390807/

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