2013-08-25 59 views
2

昨晚我花了大量的時間搜索互聯網,試圖找到一種解決方案,查找從MySQL數據庫中最後一小時創建的所有記錄。在一個答案,我發現這是到處張貼甚至不工作..CakePHP:查找上一小時的記錄

這是我想出基於我在網上找到和想到的可能工作:

$recentUploads = $this->Upload->find('all', array(
      'conditions' => array('Upload.created LIKE' => date('Y-m-d H:i:s', strtotime('-1 hour'))) 
     )); 

,但仍沒有一切都好運。有什麼想法嗎?

回答

4

你想記錄哪裏timesta熔點大於或等於時間1小時前:

$recentUploads = $this->Upload->find(
    'all', 
    array(
    'conditions' => array(
     'Upload.created >=' => date('Y-m-d H:i:s', strtotime('-1 hour')) 
    ) 
) 
); 
+0

我知道我錯過了一些非常小的東西:\非常感謝,它完美的作品! – div

+0

你會怎麼做小於或等於1小時? (lol,nvm,沒有注意到> =) – brizz

0

你需要這個功能,任何時候你想使用:

function SinceDate($timebyminuites) 
{ 

$to_time = strtotime(date('Y-m-d H:i:s')); 
$from_time = $timebyminuites*60; 
return date('Y-m-d H:i:s',round(abs($to_time - $from_time),2)); 
} 
當你想從一個小時前 得到的日期時間,你可以使用這樣的功能

$onehoursago = SinceDate(60); 

和查詢將是這樣的:

select * from Upload where Upload.created >= '$onehoursago' 
+0

不是'的strtotime(日期( 'Y-M-d H:I:S'))''有效時間()'? – ndm