简体   繁体   English

PHP json_encode()数组

[英]PHP json_encode() array

I want a json with this format : 我想要具有以下格式的json:

{"dernierNumeroDEVIS":[{"numero_devis":"48"}]}

But I have this : 但是我有这个:

{"dernierNumeroDEVIS":{"numero_devis":"48"}}

My PHP : 我的PHP:

    $array = [
        "numero_devis" => "0"
    ];
    $arrayDevis = array ('dernierNumeroDEVIS' => $array );
    echo json_encode($arrayDevis);

You need to wrap your array in an array 您需要将数组包装在数组中

$array = [
    "numero_devis" => "0"
];
$arrayDevis = array ('dernierNumeroDEVIS' => [$array]);
echo json_encode($arrayDevis);

To avoid confusion perhaps it'll be easier to understand if you used standard objects and arrays in PHP as they will be the same when formatted as JSON. 为避免混淆,如果在PHP中使用标准对象和数组,可能会更容易理解,因为它们在格式化为JSON时将是相同的。

$obj = new \stdClass();
$obj->numero_devis = 0;
$obj2 = new \stdClass();
$obj2->dernierNumeroDEVIS = [
    $obj,
];
echo json_encode($obj2);

I hope you need two dimensional array 我希望你需要二维数组

$array = array("numero_devis" => "0");
$arrayDevis = array ('dernierNumeroDEVIS' => array($array) );
echo json_encode($arrayDevis);
$array = [];
$array['dernierNumeroDEVIS'][] = ['numero_devis'=>48];
echo json_encode($array);

Output: 输出:

{"dernierNumeroDEVIS":[{"numero_devis":"48"}]}

Not sure why you need it this way but here you go ... 不知道为什么要用这种方式,但是在这里...

$array = [
    array(
        "numero_devis" => "0",
     )
];
$arrayDevis = array ('dernierNumeroDEVIS' => $array );
echo json_encode($arrayDevis);

Result: 结果:

{"dernierNumeroDEVIS":[{"numero_devis":"0"}]}

Actually there is an array inside the array something like that: 实际上,数组内部有一个类似这样的数组:

$array = array(array("numero_devis"=>"0"));             
$arrayDevis = array('dernierNumeroDEVIS' => $array );
echo json_encode($arrayDevis);

Output: 输出:

{"dernierNumeroDEVIS":[{"numero_devis":"0"}]} {“ dernierNumeroDEVIS”:[{“ numero_devis”:“ 0”}]}

In case anyone else hasn't already said, you need to wrap your array inside another array, like this: 如果没有其他人说过,则需要将数组包装在另一个数组中,如下所示:

array ('dernierNumeroDEVIS' => [$array] )

Heh. h

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM