自定义各类php中的时间函数

本文详细解析PHP中gmtime、server_timezone、local_mktime等时间处理函数及时区设置方法,包括如何获取服务器时区、本地化时间处理和时间戳转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
function gmtime()
{
    return (time() - date('Z'));
}


function server_timezone()
{
    if (function_exists('date_default_timezone_get'))
    {
        return date_default_timezone_get();
    }
    else
    {
        return date('Z') / 3600;
    }
}



function local_mktime($hour = NULL , $minute= NULL, $second = NULL,  $month = NULL,  $day = NULL,  $year = NULL)
{
    $timezone = isset(
{1}

SESSION['timezone']) ?
{1}

SESSION['timezone'] : $GLOBALS['_CFG']['timezone']; $time = mktime($hour, $minute, $second, $month, $day, $year) - $timezone * 3600; return $time;}function local_date($format, $time = NULL){ $timezone = isset(
{1}

SESSION['timezone']) ?
{1}

SESSION['timezone'] : $GLOBALS['_CFG']['timezone']; if ($time === NULL) { $time = gmtime(); } elseif ($time <= 0) { return ''; } $time += ($timezone * 3600); return date($format, $time);}function gmstr2time($str){ $time = strtotime($str); if ($time > 0) { $time -= date('Z'); } return $time;}function local_strtotime($str){ $timezone = isset(
{1}

SESSION['timezone']) ?
{1}

SESSION['timezone'] : $GLOBALS['_CFG']['timezone']; $time = strtotime($str) - $timezone * 3600; return $time;}function local_gettime($timestamp = NULL){ $tmp = local_getdate($timestamp); return $tmp[0];}function local_getdate($timestamp = NULL){ $timezone = isset(
{1}

SESSION['timezone']) ?
{1}

SESSION['timezone'] : $GLOBALS['_CFG']['timezone']; if ($timestamp === NULL) { $timestamp = time(); } $gmt = $timestamp - date('Z'); // 得到该时间的格林威治时间 $local_time = $gmt + ($timezone * 3600); // 转换为用户所在时区的时间戳 return getdate($local_time);}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值