下面的代码获取任何城市的时区偏移量,但是如果“ TimeZoneid”(“城市”)错误或PHP完全不支持,我想触发一个动作
<?php
$dtz = new DateTimeZone('Europe/Berlin');
$time_in_city = new DateTime('now', $dtz);
$TimeZone = $dtz->getOffset( $time_in_city );
if(empty($TimeZone)){
echo "Timezoneid is wrong or not Supported";
}
else{
echo "Timezoneid offset is $TimeZone";
}
?>
当我尝试编写错误的TimeZoneid来测试我的代码时,该代码不返回任何内容
$dtz = new DateTimeZone('Europe/Blablabla');
但是我想让代码告诉我这个城市是错误的还是不被支持。
答案 0 :(得分:0)
尝试以下代码:
使用try catch来测试此应用程序
<?php
try{
$dtz = new DateTimeZone('Europe/Blablabla');
$time_in_city = new DateTime('now', $dtz);
$TimeZone = $dtz->getOffset( $time_in_city );
echo "Timezoneid offset is $TimeZone";
}
catch(Exception $e){
echo "Timezoneid is wrong or not Supported";
}
?>