php – 验证来自不同网站的时区名称?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 验证来自不同网站的时区名称?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个用户从不同的网站进来,我正在让该网站以标准的’tz’格式发送到他们的时区
Antarctica/Casey    Antarctica/Davis   
 Antarctica/DumontDUrville  Antarctica/Macquarie 
 Antarctica/Mawson  Antarctica/McMurdo

我如何验证这个’字符串’进入是一个有效的时区条目?@H_404_4@

这是我在做什么@H_404_4@

$script_tz = date_default_timezone_get();
        if(!date_default_timezone_set($sPEcifiedTimeZone))
        {
            date_default_timezone_set($script_tz);
            $errormessage = "Invalid TimeZone";
            return;         
        }
        date_default_timezone_set($script_tz);

但我不喜欢它 – 似乎kludgy.@H_404_4@

测试出来:@H_404_4@

测试1
@H_404_4@

$test1 = 'america/New_York';
$test2 = 'junk';

$start = microtime(true);
for($i=1;$i<10000;$i++)
{
    if (in_array($test1,DateTimeZone::listIdentifiers())) {}else {}
    if (in_array($test2,DateTimeZone::listIdentifiers())) {}else {}
}

$end = microtime(true);

echo $end-$start;
?>

9.7208099365234

TEST2@H_404_4@

<?PHP

$test1 = 'America/New_York';
$test2 = 'junk';

error_reporting(0);
$start = microtime(true);
for($i=1;$i<10000;$i++)
{
        $script_tz = date_default_timezone_get();
        if(!date_default_timezone_set($test1))
        {
                date_default_timezone_set($script_tz);
        }
        else
                date_default_timezone_set($script_tz);
        $script_tz = date_default_timezone_get();
        if(!date_default_timezone_set($test2))
        {
                date_default_timezone_set($script_tz);
        }
        else
                date_default_timezone_set($script_tz);
}


$end = microtime(true);

echo $end-$start;
?>

0.25762510299683
使用 DateTimeZone::listIdentifers()
if (in_array($timezone,DateTimeZone::listIdentifiers())) {
    echo "valid";
}
else {
    echo "invalid";
}

脚本宝典总结

以上是脚本宝典为你收集整理的php – 验证来自不同网站的时区名称?全部内容,希望文章能够帮你解决php – 验证来自不同网站的时区名称?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。