为什么我的数组是空的?

时间:2012-09-14 02:29:46

标签: php arrays

为什么我的$dropdown数组为空?

我没有将$p复制到

     foreach($p as $pat)
   {
    print'<pre>';
    print_r($pat['name']);
    print'</pre>';

   $c = Jojo::selectQuery("SELECT * FROM {cat} WHERE {parentid} =?", array($pat['categoryid']));

   foreach($c as $cat)
   {
        print'<pre>    ';
        print_r($cat['name']);
        print'</pre>';
   }

  $dropcat =  array();
  $dropcat[$cat[$pat['categoryid'][0]] = $pat['id']];

  print_r($dropcat);
}

2 个答案:

答案 0 :(得分:0)

$dropcat =  array();
print_r($dropcat);

这些都在你的第一个foreach循环内部,导致它在循环的每次迭代中被清空。删除第一行并将第二行放在花括号后面,然后再试一次。

答案 1 :(得分:0)

这很可能是支架问题吗?

$dropcat[$cat[$pat['categoryid'][0]] = $pat['id']];
// Should be
$dropcat[$cat[$pat['categoryid'][0]]] = $pat['id'];

但是如果不知道内容和$ cat和$ pat就很难完全遵循,因为我不确定那些实际上有你期望的内容 - 他们将拥有来自foreach循环的最后一项。