(PHP初心者です)
http://d.hatena.ne.jp/keyword/register_globals
register_globalsとは - はてなダイアリー
よく言われるのはphp設定ファイル(php.ini)内の「register_globals」の問題だと思います。
この設定値のデフォルト値がphpのバージョンによって異なるため、ある環境で動いて
いたプログラムが別の環境で動かなかったりするわけです。
詳細は紹介したURLをご覧ください。
PHPの基礎体力
> ■ 外部から来る変数が獲得できない!?
> PHP4.2.0以降、$変数名 という書式では、スクリプトに渡された変数を獲得できません。
> これは、PHPの初期設定ファイル php.ini 内の register_globalsのデフォルト設定が、
> OFF に変更されたためです。セキュリティー上の理由でこのような処置がなされたので、
> この設定を ON にすることは推薦されません。
> PHP4.2.0 以降で、外部から来る変数を獲得する場合は、
> $_GET[’変数名’] ・ $_POST[’変数名’] ・ $_COOKIE[’変数名’]という書式を使いましょう。
php5からはオブジェクト指向まわりがかなり強化されています。
php3→4の時も同じような強化が目立ったみたいです。個人的にはそれよりも文字コード関係がかなり整理されたところが嬉しかったです。php4は実質国際化版といった感じでしょうか。
http://php.s3.to/man/ref.mbstring.html
マルチバイト文字列関数(mbstring)
mbstringをはじめとして拡張モジュールで実現されている機能を使おうとすると、拡張モジュールの未導入のサーバでは動作しないということが起きます。
ふむふむ、register_globals問題というのですね。他の例はありますでしょうか?