本文整理匯總了PHP中CDate::setOffset方法的典型用法代碼示例。如果您正苦於以下問題:PHP CDate::setOffset方法的具體用法?PHP CDate::setOffset怎麽用?PHP CDate::setOffset使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類CDate
的用法示例。
在下文中一共展示了CDate::setOffset方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: getDate
public static function getDate($str = '', $off = 0)
{
require_once JPATH_ROOT . DS . 'components' . DS . 'com_community' . DS . 'libraries' . DS . 'core.php';
$mainframe =& JFactory::getApplication();
$config = CFactory::getConfig();
$extraOffset = $config->get('daylightsavingoffset');
//convert to utc time first.
$utc_date = new CDate($str);
$date = new CDate($utc_date->toUnix() + $off * 3600);
$my =& JFactory::getUser();
$cMy = CFactory::getUser();
//J1.6 returns timezone as string, not integer offset.
if (method_exists('JDate', 'getOffsetFromGMT')) {
$systemOffset = new CDate('now', $mainframe->getCfg('offset'));
$systemOffset = $systemOffset->getOffsetFromGMT(true);
} else {
$systemOffset = $mainframe->getCfg('offset');
}
if (!$my->id) {
$date->setOffset($systemOffset + $extraOffset);
} else {
if (!empty($my->params)) {
$pos = JString::strpos($my->params, 'timezone');
$offset = $systemOffset + $extraOffset;
if ($pos === false) {
$offset = $systemOffset + $extraOffset;
} else {
$offset = $my->getParam('timezone', -100);
$myParams = $cMy->getParams();
$myDTS = $myParams->get('daylightsavingoffset');
$cOffset = !empty($myDTS) ? $myDTS : $config->get('daylightsavingoffset');
if ($offset == -100) {
$offset = $systemOffset + $extraOffset;
} else {
$offset = $offset + $cOffset;
}
}
$date->setOffset($offset);
} else {
$date->setOffset($systemOffset + $extraOffset);
}
}
return $date;
}