PHPを5.3.0にアップデートしてすぐに5.2.10に戻した

phpinfoでなんかエラー出た。

Warning: phpinfo() [function.phpinfo]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Tokyo' for 'JST/9.0/no DST' instead in /home/xxx/public_html/phpinfo.php on line 2

 
php.iniのdate.timezoneを設定。

[Date]
; Defines the default timezone used by the date functions
date.timezone = Asia/Tokyo

 
5.2.xと5.3.0の違いは以下を参照。
 
PHP: PHP 5.3.0 の新機能 - Manual
http://www.php.net/manual/ja/migration53.new-features.php
 
PHP: 下位互換性のない変更点 - Manual
http://www.php.net/manual/ja/migration53.incompatible.php
 
特集:PHP 5.3の新機能と変更点|gihyo.jp … 技術評論社
http://gihyo.jp/dev/feature/01/php53
 
個人的に驚いたのは、こういう書き方が出来なくなっていた事。

<?php
$user = "ゲスト";
?>
こんにちは!<?=$user;?>さん

 
XMLの1行目を書く時にいちいちPHPとみなしてエラー出るから、とかそういう理由だと思うけど。
Smartyを使ってなかった頃のものは、テンプレートファイルでこういう書き方をしてたから、かなりまずい。
という事で、5.2.10に戻した。
ここまで変更が大きいと、流石に既存のシステムをむやみにアップデートするのはちょっと危なそう。
しばらくは様子見という事で…。