PHP多维数组未按预期工作
我想创建这个响应PHP多维数组未按预期工作,php,arrays,Php,Arrays,我想创建这个响应 'Points' => array( 'Point' => array( array( 'Type' => 'value', 'Zone' => 'value ), array(
'Points' => array(
'Point' => array(
array(
'Type' => 'value',
'Zone' => 'value
),
array(
'Type' => 'value',
'Zone' => 'value'
)
)
)
我的代码告诉我:
array:1 [▼
"Points" => array:1 [▼
"Point" => array:2 [▼
"Type" => 4
"Zone" => "Front"
]
]
]
非常接近,不幸的是,de Points键被覆盖了有人知道我做错了什么吗
$pointsObject = array();
foreach ($points as $point) {
$pointsObject['Points']['Point'] = array(
'Type' => $point->type,
'Zone' => $point->zone
);
}
dd($pointsObject);
像这样试试
只需在['Points']['Point']之后添加[]
$pointsObject = array();
foreach ($points as $point) {
$pointsObject['Points']['Point'][] = array(
'Type' => $point->type,
'Zone' => $point->zone
);
}
dd($pointsObject);
像这样试试
只需在['Points']['Point']之后添加[]
$pointsObject = array();
foreach ($points as $point) {
$pointsObject['Points']['Point'][] = array(
'Type' => $point->type,
'Zone' => $point->zone
);
}
dd($pointsObject);
您正在覆盖每个循环中$pointsObject['Points']['Point']的值。为避免覆盖其值,应在末尾添加[]。例如:
$pointsObject['Points']['Point'][] = array(...);
将新值推送到每个循环中的数组中
注意。您正在覆盖每个循环中$pointsObject['Points']['Point']的值。为避免覆盖其值,应在末尾添加[]。例如:
$pointsObject['Points']['Point'][] = array(...);
将新值推送到每个循环中的数组中
问候。@johncode是的,我知道这一点,但看看我的预期结果。这是否意味着无法实现此目标?$pointsObject['Points']['Point']['Point']['Points']['Point']['Point']['code>而不是
$pointsObject['Points']['Point']=
进行追加而不是删除overwrite@kharhys谢谢:)@johncode是的,我知道,但看看我的预期结果。这是否意味着无法实现此目标?$pointsObject['Points']['Point']['Point']['Points']['Point']['Point']['code>而不是$pointsObject['Points']['Point']=
进行追加而不是删除overwrite@kharhys“试试这个”并不是一个好答案。您应该解释这是如何以及为什么解决他们的问题的。我建议阅读,“试试这个”并不是一个好的答案。你应该解释这是如何以及为什么解决他们的问题的。我建议阅读“像解释一样”+1像解释一样+1