Php 动态创建要编码为JSON的多维数组
我定义了数组的一部分:Php 动态创建要编码为JSON的多维数组,php,arrays,json,Php,Arrays,Json,我定义了数组的一部分: $arrData['categories'] = array(); array_push($arrData['categories'],array("category" => array(array("label"=>"Beef"),array("label"=>"Chicken")))); array_push($arrDAta['categories'][0]['category'],array("label"=>"pork")); 数组是嵌
$arrData['categories'] = array();
array_push($arrData['categories'],array("category" => array(array("label"=>"Beef"),array("label"=>"Chicken"))));
array_push($arrDAta['categories'][0]['category'],array("label"=>"pork"));
数组是嵌套的,因此它可以正确地编码为JSON,所有的{[{[]}]}格式都正确
但是,我需要动态地创建这些类型的肉,而不是静态地创建。当我尝试添加到第三行代码中的数组以模拟动态创建时,它会抛出一个错误:
警告:array_push()要求参数1为数组,给定null
嗯,$arrData['categories'][0]['categority]
是一个数组,为什么它会把我击倒
为了证明自己不是疯子,我使用var_dump$arrData['categories'][0]['categories']
并获得一个大小为1的数组:
array (size=1)
'category' =>
array (size=2)
0 =>
array (size=1)
'label' => string 'Beef' (length=4)
1 =>
array (size=1)
'label' => string 'Chicken' (length=7)
这是资本化。在第三行中,变量$arrDAta的大写形式与其他变量($arrDAta)不同。请原谅,我正在关机睡觉。显然,我是我们不能拥有美好事物的原因