close
太久沒寫程式, 最近往往只顧著解決眼前問題,沒考慮較周詳的處理。
先前遇到的PHP版本不同(PHP4或PHP5)的設定時區問題, 其實可以有更簡單的方式, 就是利用判斷PHP版本方式來使用正確的設定時區方式;PHP的函數這麼多,總該有取得版本的方法。

寫法:
<?php //設定時區為台北, 適用 php4,ph5
if (version_compare( phpversion() , '5.1.0', '>=')){
    date_default_timezone_set('Asia/Taipei'); //PHP5設定時區, 在PHP4無法使用
} else {
    putenv("TZ=Asia/Taipei"); //PHP4設定時區的用法
}
?>

另一寫法,直接用常數 PHP_VERSION 替代 phpversion()函數
<?php //設定時區為台北, 適用 php4,ph5
if (version_compare( PHP_VERSION, '5.1.0', '>=')){
    date_default_timezone_set('Asia/Taipei'); //PHP5設定時區, 在PHP4無法使用
} else { 
    putenv("TZ=Asia/Taipei"); //PHP4設定時區的用法
}
?> 

還有另一種寫法,不去判斷PHP版本,而直接判斷函數 date_default_timezone_set() 存不存在,這種方式可能更方便,類似寫法可套用在其他因版本不同而不同的函數:
<?php //設定時區為台北, 適用 php4,ph5 
if (function_exists ( 'date_default_timezone_set' )){
    date_default_timezone_set('Asia/Taipei'); //PHP5設定時區, 在PHP4無法使用
} else {
    putenv("TZ=Asia/Taipei"); //PHP4設定時區的用法
}
?>


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Jikky 的頭像
    Jikky

    咖啡戒斷症候群

    Jikky 發表在 痞客邦 留言(0) 人氣()