数组长度计数不匹配

时间:2013-01-12 11:06:15

标签: php arrays

当我将全局数组设置为

 $items[$users[$clientID]['room']] = array("seat" => $seat, "item_id" => $q[1], "room" => $users[$clientID]['room']);

它是

  $items[4] = array("seat" => 20, "item_id" => 10, "room" => 4);

但是当我计算它时,它告诉$ items [4]的长度是3?它应该只计数1,因为我只有“1”项。

for ( $i=0;$i<count($items[$users[$clientID]['room']]);$i++):
    //something 
endfor;

print_r($items[$users[$clientID]['room']]);

输出:

Array
( 
    [seat] => 43
    [item_id] => 46
    [room] => 5 
)
 COUNT 3

我做错了什么?

2 个答案:

答案 0 :(得分:2)

您已将$ items [$ users [$ clientID] [&#39; room&#39;]]定义为一个数组:但是包含三个项目的数组 - seat,item_id和room - 这些是单个数组你正在计算的项目。

答案 1 :(得分:1)

$items[$users[$clientID]['room']]是一个数组,count()返回数组中没有元素,如果要计数的值不是它将返回的数组1.有关{{1}的更多信息,请参阅此链接功能。

Count Function - PHP