2014-02-12 64 views
0

这几乎是两个问题之一。首先,我有一个从SQL表中填充的数组,该数据表是一系列事件然后输出到日历上的。阵列结构和重新格式化

在数据库中有一个名为“日”列,这将是

下面是代码,我已经习惯了的尺寸增加了(“星期一”,“星期二”等)的一周中的一天基于'日'的数组。

$days = array('Monday' => array(), 'Tuesday' => array(), 'Tuesday' => array(), 'Wednesday' => array(), 'Thursday' => array(), 'Friday' => array(), 'Saturday' => array(), 'Sunday' => array()); 

while ($row = mysqli_fetch_assoc($result)) { 
    $days[$row['day']][] = $row; 
} 

这个新的数组现在的结构如下:$天[“星期一”] [0] [“名”] 我已经再拆这个多维数组分成多个独立的数组。

$monday = $days['Monday']; $tuesday = $days['Tuesday']; $wednesday = $days['Wednesday']; $thursday = $days['Thursday']; $friday = $days['Friday']; $saturday = $days['Saturday']; $sunday = $days['Sunday']; 

该阵列现在结构如下:$星期一[0] [“名”]

  1. 我真正需要的是消除层和具有结构为: $星期一['名称']。什么是实现这一目标的最佳方式?

  2. 此外,我已经到了这一步,因为我的知识 阵列功能是非常斑驳的一步一步一步。必须有一个更简单的方法来做到上述所有,并将代码细化一下,任何人都可以将 指向正确的方向?

非常感谢提前!

回答

0

我从你的逻辑推断,你每天只能得到1行?

如果是这样,只是改变

$days[$row['day']][] = $row; 

$days[$row['day']] = $row; 

在一段时间()。

这实际上意味着您在第一行中所做的大部分工作都是多余的,您可以将其更改为$days = array();