0
我在zend框架中有一个模块,我想按照数据库日期时间值差异来执行它。你可以认为我想创建一个出生日提醒,它会在出生那天向我的用户显示一条消息。我怎样才能在zend框架中创建它?任何建议或任何想法大多是受欢迎的。如何在zend框架中创建自动执行器模块?
我在zend框架中有一个模块,我想按照数据库日期时间值差异来执行它。你可以认为我想创建一个出生日提醒,它会在出生那天向我的用户显示一条消息。我怎样才能在zend框架中创建它?任何建议或任何想法大多是受欢迎的。如何在zend框架中创建自动执行器模块?
首先,您必须从数据库中获取日期时间和时区差异(可能使用模型)。
然后你可以使用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";
?>