2013-06-25 61 views
0

我在zend框架中有一個模塊,我想按照數據庫日期時間值差異來執行它。你可以認爲我想創建一個出生日提醒,它會在出生那天向我的用戶顯示一條消息。我怎樣才能在zend框架中創建它?任何建議或任何想法大多是受歡迎的。如何在zend框架中創建自動執行器模塊?

回答

1

首先,您必須從數據庫中獲取日期時間和時區差異(可能使用模型)。

然後你可以使用gmstrftime()如果時差是數字表示(例如+1,+2或-1,-2等):

<?php 
    $offset = 2; 
    $timestamp = time() + ($offset * 60 * 60); 
    echo gmstrftime("%b %d %Y %H:%M:%S", $timestamp) . "\n"; 
?> 

PHP手冊這裏 - http://php.net/manual/en/function.gmstrftime.php

但一個更優雅的解決方案可能是使用的DateTime :: setTimezone():

<?php 
// From PHP manual 

$date = new DateTime('2000-01-01', new DateTimeZone('Pacific/Nauru')); 
echo $date->format('Y-m-d H:i:sP') . "\n"; 

$date->setTimezone(new DateTimeZone('Pacific/Chatham')); 
echo $date->format('Y-m-d H:i:sP') . "\n"; 
?>