PHP4 から PHP5 へのスムーズな移行のために、従うべき適切な手順は何ですか。破損しやすいコードの種類にはどのようなものがありますか?
4 に答える
また、PHP4 の XML サポートをかなり多用するアプリに取り組んだこともあり、PHP5 に移行するにはかなりの作業が必要でした。
当時私が注目していた他の重要な変更の 1 つは、関数パラメーターのデフォルトの処理の変更でした。私が覚えているように、PHP4では特に指定しない限りコピー渡しでしたが、PHP5ではデフォルトで参照渡しに変更されています。適切に記述されたコードでは、おそらく大きな違いはありませんが、問題が発生する可能性があることは確かです。
私が見つけたもう 1 つの変更点は、オブジェクトが「this」フィールドを上書きできなくなったことです。そもそもそれは本当に悪い考えだったと思います (そして、PHP4 の意図的な機能ではなかったと思います) が、私たちのシステムのいくつかの部分がそれに依存していることを確かに見つけました。
その一部が役立つことを願っています。
PHP4 を使用しているすべての人に私ができる最善のアドバイスは次のとおりです。
error_reporting( E_ALL );
何をする必要があるかを正確に教えてくれます。
PHP 4 の XML DOM 関数に大きく依存するアプリがあり、PHP 5 に変更するには多くの再ツール化が必要でした。
それを超えて、ほとんどの変更は、エラー処理 (例外を利用するため) や PHP クラスなどの改善でした。
OOP は最大の違いの 1 つです。PHP4 と PHP5 の OOP スタイルは交換可能であるため、壊れることはありませんが、PHP5 の新しい OOP スタイルを利用することをお勧めします。既存のクラスを PHP5 に変換するのは大した作業ではなく、いくつかの既存のハックを解決するのに役立つ魔法のメソッドがいくつか追加されます (ほとんどのクラスで __toString と同等のメソッドがほとんど役に立たないことを覚えています)。