ネクストベータ代表Blog

WEBシステム SI屋の代表のブログです。

*

関数 wp_fix_server_vars() 完了

      2014/12/05

稼働環境による違いを吸収する関数を定義

定義ファイル :/blog/wp-includes/load.php

環境によって$_SERVER変数の値が違っているので、「ゆれ」を吸収する。

呼出元 :/blog/wp-settings.php

PHPマニュアル
$_SERVER

‘PHP_SELF’
現在実行しているスクリプトのファイル名です。 ドキュメントルートから取得されます。 例えば、http://example.com/foo/bar.php というアドレス上にあるスクリプトでは $_SERVER[‘PHP_SELF’] は /foo/bar.php となります。 __FILE__ 定数 には、カレント(すなわち読み込まれた)ファイルのパスとファイル名が含まれます。 PHP がコマンドラインから実行される場合、PHP 4.3.0 以降、 この変数にはスクリプト名が含まれます。これより前のバージョンでは、 この変数は使用できません。
PHP マニュアル>言語リファレンス>定義済の変数

変数 $default_server_values を初期化
array()

$_SERVER に $_SERVER の値を配列にまとめる。
array_merge()

empty()
php_sapi_name()

Microsoft IIS 関係の処理

CGIとモジュールによるWEBサーバの違いを吸収する.

strpos()
preg_replace()

$_SERVER

‘SCRIPT_FILENAME’

現在実行されているスクリプトの絶対パス
注意:
file.php あるいは ../file.php のような相対パスを指定して CLI でスクリプトが実行されている場合、 $_SERVER[‘SCRIPT_FILENAME’] には ユーザーが指定した相対パスが含まれます。

‘PATH_TRANSLATED’

バーチャルからリアルへのマッピングがなされた後の、 現在のスクリプトのファイルシステム上(ドキュメントルートではなく) でのパス。
注意:
PHP 4.3.2 以降、PATH_TRANSLATED は、 Apache 2 SAPI において暗黙のうちに設定されなく なりました。一方、Apache 1 では、この値が Apache により設定されない場合、 SCRIPT_FILENAME と同じ値に設定されます。 この変更は、PATH_TRANSLATED は PATH_INFO が定義されている場合のみ 存在するべきであるという CGI の規約を満たすために 行われました。 Apache 2 ユーザーは、PATH_INFO を定義するために httpd.conf の中で AcceptPathInfo = On を使用することが可能です。

‘PATH_INFO’

実際のスクリプトファイル名とクエリ文字列の間にある、クライアントが提供するパス名情報。 たとえば、現在のスクリプトに http://www.example.com/php/path_info.php/some/stuff?foo=bar という URL でアクセスしていた場合の $_SERVER[‘PATH_INFO’] は /some/stuff となります。

‘REQUEST_URI’

ページにアクセスするために指定された URI。例えば、 ‘/index.html’

$PHP_SELFに値が入っていなければ
$_SERVER[‘PHP_SELF’] = $PHP_SELF = 加工した$_SERVER[“REQUEST_URI”] を代入する

 - 関数