Php 使用foreach将数据从数据库获取到数组中
我有一个包含事件的数据库表:Php 使用foreach将数据从数据库获取到数组中,php,mysql,arrays,codeigniter,foreach,Php,Mysql,Arrays,Codeigniter,Foreach,我有一个包含事件的数据库表: id | title | description | day_start | day_end | user_id 1 | sometitle | blabla | 2011-04-20 | 2011-04-21 | 1 2 | title 2 | bleble | 2011-04-20 | 2011-04-21 | 1 我想用foreach循环从我的数据库中读出这个 我想将其存储到$data[day
id | title | description | day_start | day_end | user_id
1 | sometitle | blabla | 2011-04-20 | 2011-04-21 | 1
2 | title 2 | bleble | 2011-04-20 | 2011-04-21 | 1
我想用foreach循环从我的数据库中读出这个
我想将其存储到$data[day\u start]
例如:$data['2011-04-21']
在这种情况下应该包含两个数组,每个事件一个。我不知道该怎么做。我有以下代码(在CI中):
(参数是日期,如2011-04-20)
但是,正如预期的那样,这只输出第二个事件(因为我使用的是“=”,它覆盖了第一次放入数组中的数据):
阵列([2011-04-20]=>阵列(
[标题]=>测试事件2[说明]
=>第二个事件[开始日期]=>2011-04-20[结束日期]=>
2011-04-20[时间开始]=>12
[时间结束]=>13[用户id]=>1))
(这里的数据不同于我在顶部提供的数据,但这是关于想法,而不是数据)
我试着使用。=但是php抱怨说找不到这样的索引。。因为我没有发起它,我正在尝试添加它
然后,我尝试使用if(isset($data[$start])
块,但这也没有真正实现
我想获取某一天的所有事件,并将它们放入一个数组中,以便在我的应用程序中进一步处理它们。
非常感谢。试试看
$data[$row->day_start][] = array(
第二组
[]
将创建一个自动迭代数组,因此不会过度写入任何数据。除非我误解了,否则CI允许您返回一个结果数组,其执行的操作与上面的代码完全相同
return$query->result_array();
我会的
如果您不希望阵列中的所有数据,请不要选择
*
,只获取您需要的数据。非常感谢。就是这样。:DCool,自动迭代阵列是一个非常有用的概念!!
$data[$row->day_start][] = array(