2012-05-12 204 views
0

我有兩個時間值如在下面提供日期時間比較

$row2[0]=00:40:00; 
$row1[5]=14:00:00; 
$time=14:33:00 
$time=$row[1]; 

我正在組合$ ROW2 [0],$ ROW1 [5]如下面

$secs = strtotime($row2[0])-strtotime("00:00:00"); 
$result = date("H:i:s",strtotime($row1[5])+$secs); 

$result=14:40:00 

i如果條件使用如圖所示

if($row[1]>$row1[5] && $row[1]<$result) 
{ 
$message=array("status"=>$result); 
} 
else 
{ 
$message=array("status"=>''); 
} 

,但我得到"status"=>""其不正確

我想"status"=>"14:40:00"

請幫助我們獲得正確的出放

回答

2

你似乎並沒有定義任何地方$row[1],因此它被視爲NULL,其作爲一個整數0,這不能比你在$row1[5]給出的時間大。

嘗試使用較不明確的變量名稱,這可能會更容易發現這樣的問題。

個人而言,我不明白爲什麼這if有可言,只是將其刪除和else塊,只留下$message = array("status"=>$result);

1

這是真的奧德僞代碼? 因爲

$row2[0]=00:40:00; 

是不是真正的PHP代碼!

$row2[0] = 00:40:00; // $row2[0] would be 0, because you are assigning an integer 
$row2[0] = "00:40:00"; // $row2[0] would be "00:40:00", but as a string (!) 

我會一直與時間戳順便說一句。

0

我Panique去他的回答,我也想補充一下:

你定義了兩個瓦爾:

$row2[0]=00:40:00; 
$row1[5]=14:00:00; 

但你在,如果

if($row[1]>$row1[5] && $row[1]<$result) 

稱爲不同的數組元素解決這個問題,你應該讓你的代碼工作。