如何数组列表转换没有。=在PHP? [英] How to convert array to list without .= in PHP?
问题描述
我有以下的阵列输出。
阵列
(
[日] => 17
[eventContent] => 17日的事件1
[EVENTTITLE] => 17事件1
)排列
(
[日] => 19
[eventContent] => 19日的事件1
[EVENTTITLE] => 19事件1
)排列
(
[日] => 05
[eventContent] => 5日的事件1
[EVENTTITLE] => 5事件1
)排列
(
[日] => 17
[eventContent] => 17日事件2
[EVENTTITLE] => 17日事件2
)排列
(
[日] => 19
[eventContent] => 19日事件2
[EVENTTITLE] => 19事件2
)排列
(
[日] => 19
[eventContent] => 19日3时
[EVENTTITLE] => 19日事件3
)
...
...
现在我想让它像如下。
例如对于19
<立GT;
<跨度类=标题> 19事件1 LT; / SPAN>
<跨度类=降序> 19&LT的事件1; / SPAN>
< /李>
<立GT;
<跨度类=标题> 19事件2'; / SPAN>
<跨度类=降序> 19&LT的事件2; / SPAN>
< /李>
<立GT;
<跨度类=标题> 19事件3'; / SPAN>
<跨度类=降序> 19&LT的事件3; / SPAN>
< /李>
我尝试以下。它工作在PHP罚款,但不是在codeigniter。所以,我希望有人能告诉我另一种方式来做到跟了出去。=
先谢谢了。
$事件[INTVAL($ row_event->天)] ='<立GT;<跨度类=标题>'
.stripslashes($ row_event-> EVENTTITLE)。
'< / SPAN><跨度类=降序>'的stripslashes($ row_event-> eventContent)。
'< / SPAN>< /李>';
和下面是该模型的细节。
$事件=阵列();//查询数据库为每月的第一个日期和最后一个月的日期之间的事件
// $结果= mysql_query(SELECT DATE_FORMAT(EVENTDATE,'%D')如白昼,eventContent,从EVENTTITLE WHERE eventcal EVENTDATE BETWEEN'$ CURRENT_YEAR / $ current_month / 01'和'$ CURRENT_YEAR / $ current_month / $ total_days_of_current_month' );$查询= $这个 - > DB->查询(SELECT DATE_FORMAT(EVENTDATE,'%D')如白昼,eventContent,EVENTTITLE FROM eventcal WHERE EVENTDATE BETWEEN'$ CURRENT_YEAR / $ current_month / 01'和'$ CURRENT_YEAR / $ current_month / $ total_days_of_current_month');
的foreach($查询 - > result_array()为$ row_event)
{$事件[INTVAL($ row_event ['天'])] ='<立GT;<跨度类=标题>'
.stripslashes($ row_event ['EVENTTITLE'])。'< / SPAN><跨度类=降序>'
.stripslashes($ row_event ['eventContent'])。'< / SPAN>< /李>';
...
...
- 更新 -
控制器
查看
错误
遇到了PHP的错误严重性:通知消息:未定义抵消:17文件名:型号/ mcalendar_one.php行号:38排列
(
[日] => 17
[eventContent] => 17日的事件1
[EVENTTITLE] => 17事件1
)遇到一个PHP错误严重性:通知消息:未定义抵消:19文件名:型号/ mcalendar_one.php行号:38排列
(
[日] => 19
[eventContent] => 19日的事件1
[EVENTTITLE] => 19事件1
)
...
...
这可以简化不少。首先,看看活动记录在CI的数据库类,它会让你的数据库更容易调用100%。
你为什么不能数组传递回视图,并有注入呢?
您认为可能看起来像
< PHP的foreach($ row_event为$事件)?>
<立GT;
<跨度类=标题>< PHP的echo $事件 - > EVENTTITLE; ?>< / SPAN>
<跨度类=降序>< PHP的echo $事件 - > eventContent; ?>< / SPAN>
< /李>
< PHP endforeach; ?>
通过你的活动详情阵列,这将循环使您的清单。
I have the following array outputs.
Array
(
[day] => 17
[eventContent] => event 1 of 17th
[eventTitle] => 17th event 1
)
Array
(
[day] => 19
[eventContent] => event 1 of 19th
[eventTitle] => 19th event 1
)
Array
(
[day] => 05
[eventContent] => event 1 of 5th
[eventTitle] => 5th event 1
)
Array
(
[day] => 17
[eventContent] => event 2 of 17th
[eventTitle] => 17th event 2
)
Array
(
[day] => 19
[eventContent] => event 2 of 19th
[eventTitle] => 19th event 2
)
Array
(
[day] => 19
[eventContent] => event 3 of 19th
[eventTitle] => 19th event 3
)
...
...
Now I want to make it like the followings.
For example for 19th
<li>
<span class="title">19th event 1</span>
<span class="desc">event 1 of 19th</span>
</li>
<li>
<span class="title">19th event 2</span>
<span class="desc">event 2 of 19th</span>
</li>
<li>
<span class="title">19th event 3</span>
<span class="desc">event 3 of 19th</span>
</li>
I tried the following. It works fine in PHP but not in Codeigniter. So I am hoping someone can tell me another way to do with out .=
Thanks in advance.
$events[intval($row_event->day)] .= '<li><span class="title">'
.stripslashes($row_event->eventTitle).
'</span><span class="desc">'.stripslashes($row_event->eventContent).
'</span></li>';
And the following is the details of the model.
$events = array();
//query the database for events between the first date of the month and the last of date of month
// $result = mysql_query("SELECT DATE_FORMAT(eventDate,'%d') AS day,eventContent,eventTitle FROM eventcal WHERE eventDate BETWEEN '$current_year/$current_month/01' AND '$current_year/$current_month/$total_days_of_current_month'");
$query = $this->db->query("SELECT DATE_FORMAT(eventDate,'%d') AS day,eventContent,eventTitle FROM eventcal WHERE eventDate BETWEEN '$current_year/$current_month/01' AND '$current_year/$current_month/$total_days_of_current_month'");
foreach ($query->result_array() as $row_event)
{
$events[intval($row_event['day'])] .= '<li><span class="title">'
.stripslashes($row_event['eventTitle']).'</span><span class="desc">'
.stripslashes($row_event['eventContent']).'</span></li>';
...
...
--UPDATE--
Controller
View
Errors
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 17
Filename: models/mcalendar_one.php
Line Number: 38
Array
(
[day] => 17
[eventContent] => event 1 of 17th
[eventTitle] => 17th event 1
)
A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 19
Filename: models/mcalendar_one.php
Line Number: 38
Array
(
[day] => 19
[eventContent] => event 1 of 19th
[eventTitle] => 19th event 1
)
...
...
This can simplified quite a bit. First, look at Active Record in CI's database class, it will make your DB calls 100% easier.
Why can't you pass the array back to the view and inject it there?
Your view may look like
<?php foreach ($row_event as $event) : ?>
<li>
<span class="title"><?php echo $event->eventTitle; ?></span>
<span class="desc"><?php echo $event->eventContent; ?></span>
</li>
<?php endforeach; ?>
That will loop through your array of event details and make your list.
这篇关于如何数组列表转换没有。=在PHP?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!