2012-03-29 77 views
0

我在得到这个数组,我可以使用的格式的问题。还有一些额外的数据没有在我的foreach循环中显示出来。有人可以看看我建立阵列的方式并告诉我我做错了什么吗?如何正确创建数组

将有超过一个部门和一个以上的位置。位置取决于该部门有多少个地点。

foreach... 
    $arr[$db['name']] = 
     array($db['date'] => 
     array($db['dept'] => (Need other departments to show) 
      array($db['location'] => $db) (Need more locations for above dept.) 
     ) 
    ); 

给我:

Array 
(
    [training] => Array 
    (
    [08-24-2011] => Array 
    (
     [dept1] => Array <----------There is more than one department that should show 
     (
     [dept1 Other] => Array <--There is more than one location that should show 
     (
      [start_time] => 03:00 
      [end_time] => 19:00 
     ) 
    ) 
    ) 
) 
) 

这是我后。我只需要知道如何命令它以便我的数组产生这个输入;

Array 
(
    [training] => Array 
    (
    [08-24-2011] => Array 
    (
     [dept1] => Array 
     (
     [dept1 Other] => Array 
     (
      [start_time] => 03:00 
      [end_time] => 19:00 
     ) 
     [dept2 Other] => Array 
     (
      [start_time] => 03:00 
      [end_time] => 19:00 
     ) 
    ) 
     [dept2] => Array 
     (
     [dept1 Other] => Array 
     (
      [start_time] => 03:00 
      [end_time] => 19:00 
     ) 
     [dept2 Other] => Array 
     (
      [start_time] => 03:00 
      [end_time] => 19:00 
     ) 
     [dept3 Other] => Array 
     (
      [start_time] => 03:00 
      [end_time] => 19:00 
     ) 
    ) 
    ) 
) 
) 
+0

它看起来像你做的事情有点不标准。你能向我们展示一个你希望得到的数组的例子吗? – octern 2012-03-29 03:07:39

+0

@octern,我在做什么只是从数据库重新排序我的数组。我想简单地改变 – Muzz 2012-03-29 03:08:45

+0

的字段您的输入信息不清楚。你为什么不尝试'var_dump'? – Raptor 2012-03-29 03:09:02

回答

0

什么是非循环obj或数组的var_dump?

有几种可能性。这里有一个刺他们两个:

  1. 您已经循环的数据不足以与您的foreach循环一起使用。我想这是怎么回事:

    $arr = array(); 
    foreach($dbObj as $db) 
    { 
        //your loop goes here 
        // 
    } 
    

您需要在这种情况下倾倒$ dbObj。它是一个2D数组,就像你在处理它?也许这是真的3D,你没有足够的循环...

  1. 你只是从您的数据库拉你的查询一项。检查...
+0

谢谢马修,我拉了一个关联数组。谢谢。 – Muzz 2012-03-29 03:51:15

+0

乐意帮忙!像这样的事情可能会很棘手,直到你做了很多次。 :)让我知道如果你在阵列构建的任何其他点绊倒。 – 2012-03-29 03:52:34