【发布时间】:2021-09-08 14:31:46
【问题描述】:
我有一个这样的数组:
array (size=2)
'status' => string 'ok' (length=2)
'data' =>
array (size=5)
'sort_data' =>
array (size=2)
'sort_column' => string 'order_item_id' (length=13)
'sort_order' => string 'asc' (length=3)
现在我编写此代码是为了获取 sort_column 和它的价值以及 sort_order 和它的价值:
$status = $response['status'];
if($status == 'ok'){
$nums = count($response['data']['sort_data']); //retrieves 2
for($i=0; $i<=$nums; $i++){
foreach($response['data']['sort_data'][$i] as $key=>$value){
echo $key."=".$value;
}
}
}
但我收到以下错误:
注意:未定义的偏移量:第 6 行为 0
警告:在第 6 行为 foreach() 提供的参数无效
第 6 行:
foreach($response['data']['sort_data'][$i] as $key=>$value){
那么这里出了什么问题?
我怎样才能在这个foreach 中正确获取sort_data 的内容?
更新 #1:
Array
(
[status] => ok
[data] => Array
(
[sort_data] => Array
(
[sort_column] => order_item_id
[sort_order] => asc
)
【问题讨论】:
-
for($i=0; $i<=$nums; $i++)会给你一个错误。除此之外,错误正在告诉您确切的问题。您向 foreach 提供一个字符串值。 -
@JohnLobo 我把这个项目放到laravel外面,现在是用纯PHP写的
-
回声 "
"; print_r($response);出口();试试这个
-
我添加了一个更新#1
-
@tejoslaeslio 你也可以发布预期的输出
标签: php arrays laravel multidimensional-array foreach