我一直遇到从数组中获取值的问题:格式如下:
array(
[key]=>array(
[0]=>value
[1]=>value
[2]=>value)
[key]=>array(
[0]=>value
[1]=>value))
我使用队列作为队列项运行每个键并处理信息。所以要创建队列项我试过这个:
while ($array = $result->fetchAssoc())
{
$queue->createItem($array);
}
这无法创建任何项目,所以我使用了这种方法
if ($array != 0 || $array != NULL) {
foreach ($array as $row) {
$queue->createItem($row);
}
}
创建队列项后,队列调用一个传递队列$ item的函数,这里是我遇到问题的地方,因为我可以成功获取第二级数组的所有值,但是我无法访问第一级的Key
function work_function($item){
foreach($item as $row=>$job){
//do something
}
}
在我的功能中,我尝试过:
//1
$arrayKEY= $item;
//2
foreach($item as $row){
$arrayKEY= $row;
}
我无法获得我需要的价值。我做错了什么/我可以做到这一点吗?
由于
答案 0 :(得分:1)
这里没有太多信息,但是如果数组就像你展示的那样,它就是一个多维数组,因此需要2个循环。
function work_function($item){
foreach($item as $row=>$job){
echo "Row $row:\n";
foreach($job as $value){
echo $value."\n";
}
}
}