从php数组访问值
我在从如下格式的数组中获取值时遇到了一个问题:从php数组访问值,php,arrays,drupal,for-loop,Php,Arrays,Drupal,For Loop,我在从如下格式的数组中获取值时遇到了一个问题: array( [key]=>array( [0]=>value [1]=>value [2]=>value) [key]=>array( [0]=>value [1]=>value)) 我使用一个队列作为队列项遍历每个键并处理信息。因此,为了创建队列项目,我尝试了以下方法:
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的函数,这就是我遇到的问题,因为我可以成功地获取第二级数组的所有值,但我无法访问第一级数组的键
function work_function($item){
foreach($item as $row=>$job){
//do something
}
}
在我的功能中,我尝试过:
//1
$arrayKEY= $item;
//2
foreach($item as $row){
$arrayKEY= $row;
}
我就是不能得到我需要的价值。我做错了什么/我能做什么来实现这一点
谢谢这里没有太多信息,但是如果数组与您展示的一样,它是一个多维数组,因此需要2个for循环
function work_function($item){
foreach($item as $row=>$job){
echo "Row $row:\n";
foreach($job as $value){
echo $value."\n";
}
}
}
@用户975044。有没有可能对$queue的定义不那么严格?具体是哪一个Php对象?好的,具体针对我的情况,我使用的是:糟糕的文档。。Drupal我知道。。但这对问题并不重要。队列基本上是将对象加载到要处理的容器或行中的一种方式。因此,如果我希望数字1,2,3,4通过相同的函数按顺序处理,我可以为每个数字创建一个队列对象。因此,在队列中,我有4个对象,按顺序包含数字1、2、3、4。要开始处理队列,第一个对象,即数字1,将从队列中拉出并处理。我不应该提到这一点,因为这并不是问题的根源。它能够访问数组中的数组键和值function@user975044:我们都知道队列是什么,我们问您的
$queue
对象是什么。