php foreach 数量,php count并获得foreach循环中的最后一条记录

我试图能够计算特定场所的特定日期(今天)的总事件。 使用24小时制时间, 我试图在foreach循环中查找当天的最后一个事件,然后当一天的最后一个事件的end_time小于现在时,显示文本“所有安排的事件已经为今天结束”。php count并获得foreach循环中的最后一条记录

我的问题是,xml数据包括所有房间的所有事件14天,我没有得到正确的计数。 我有几个,如果在foreach中的语句以削减下来....

如果XML空间ID ==房间ID,然后 如果XML事件起始日期今天等于,然后 如果($ I $ < numItems的) 如果事件结束时间大于现在, 显示这些事件

我需要记录的计数在满足这些条件......当事件是今天的日期,并在同一个房间作为被通通过roomID网址。 把我的$一个numItems = $计数($ ARR)之前在foreach计算太多记录,并把内部的foreach计数总是返回只算1。

$arr = $this->data['events'];

$numItems = count($arr);

$i = 1;

foreach ($arr as $key => $reservation){

if ((int)$reservation->space_reservation->space_id == $roomID)

{

//test today's date

$resDT = date('m/d/y',strtotime($reservation->reservation_start_dt));

if ($resDT == date('m/d/y'))

{

if ($i < $numItems)

{

$repst = substr($reservation->event_start_dt,11,5);

$repet = substr($reservation->event_end_dt,11,5);

if ((date('H:i',strtotime($repet))) > (date('H:i')))

{

echo '

' .$reservation->event_name. '

';

echo '' .date('m/d/y',strtotime($reservation->event_start_dt)). ' ';

echo '' .date('g:i a',strtotime($repst)). ' - ';

echo date('g:i a',strtotime($repet)). ' ';

echo '
';

} // ends if event end date has passed

//echo ''.$i.'';

echo '
';

}

//if $i equals last record

elseif ($i === $numItems) {

// test if last event ends show

if ((date('g:i a',strtotime($repet))) < (date('g:i: a'))){

echo 'All scheduled meetings/events have concluded for today.
';

}

}

$i++;

} // ends if

} // ends if

} // ends for each

2013-04-15

sloga

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值