データ処理

表 H-4. データ処理設定オプション

名前デフォルト変更の可否
track_vars"On"PHP_INI_??
arg_separator.output"&"PHP_INI_ALL
arg_separator.input"&"PHP_INI_SYSTEM|PHP_INI_PERDIR
variables_order"EGPCS"PHP_INI_ALL
register_globals"Off"PHP_INI_PERDIR|PHP_INI_SYSTEM
register_argc_argv"On"PHP_INI_PERDIR|PHP_INI_SYSTEM
register_long_arrays"On"PHP_INI_PERDIR|PHP_INI_SYSTEM
post_max_size"8M"PHP_INI_SYSTEM|PHP_INI_PERDIR
gpc_order"GPC"PHP_INI_ALL
auto_prepend_file""PHP_INI_SYSTEM|PHP_INI_PERDIR
auto_append_file""PHP_INI_SYSTEM|PHP_INI_PERDIR
default_mimetype"text/html"PHP_INI_ALL
default_charset"iso-8859-1"PHP_INI_ALL
always_populate_raw_post_data"0"PHP_INI_SYSTEM|PHP_INI_PERDIR
allow_webdav_methods"0"PHP_INI_SYSTEM|PHP_INI_PERDIR

以下に設定ディレクティブに関す る簡単な説明を示します。

track_vars boolean

サーバ変数はそれぞれ、グローバル連想配列 $_ENV, $_GET, $_POST, $_COOKIE, $_SERVERで参照することができます。

PHP 4.0.3以降, track_vars は常にonとなっている ことに注意して下さい。

arg_separator.output string

PHPがURLを生成する際にURL引数を区分するために使用されるセパレータ。

arg_separator.input string

入力されたURLを変数にパースする際にPHPが使用するセパレータのリスト。

注意: このディレクティブで指定した全ての文字はセパレータとして認識 されます!

variables_order string

EGPCS (Environment, GET, POST, Cookie, Server) 変数のパースの 順番を設定します。このディレクティブのデフォルトの設定値は、 "EGPCS"です。例えば、これを"GP"に設定するとPHPは完全に環境変 数、クッキー、サーバ変数を無視し、GETメソッド変数を同じ名前の POSTメソッド変数で全て上書きするようになります。

register_globals も参照下さい。

register_globals boolean

EGPCS(Environment, GET, POST, Cookie, Server)変数を グローバル変数として登録するかどうかを指定します。

PHP 4.2.0以降、 このディレクティブのデフォルトは、offです。

関連する情報については、セキュリティの章の register_globalsの使用 を参照してください。

register_globalsは、 (ini_set()で)実行時に設定することができないことに 注意して下さい。しかし、前記のようにホストが許可している場合には、 .htaccess を使用することができます。 .htaccess エントリの例を以下に示します。 php_flag register_globals off

注意: register_globals は、 variables_order ディレクティブの影響を受けます。

register_argc_argv boolean

PHPが変数argvとargcを宣言するかどうかを指定します (これらにはGETの情報が格納されます)。

コマンドライン も参照下さい。このディレクティブはPHP 4.0.0で 追加されました。以前のバージョンでは常に"on"です。

register_long_arrays boolean

PHPが、古い長い$HTTP_*_VARS 型の 定義済みの変数 を登録するかどうかを指定します。 On (デフォルト)とした場合、$HTTP_GET_VARS のような 長い定義済みのPHP変数が定義されます。 これらの変数を使用していない場合には、性能面からこのオプションをoffとすることが 推奨されています。 代りに$_GETのようなスーパーグローバル変数を使用して下さい。

このディレクティブはPHP 5.0.0で利用可能となりました。

post_max_size integer

POSTデータに許可される最大サイズを設定します。この設定は、ファ イルアップロードにも影響します。大きなファイルをアップロード するには、この値を upload_max_filesize より大きく設定する必要があります。

configureスクリプトでメモリ制限を有効とした場合、memory_limitも ファイルアップロードに影響します。一般的に memory_limit は、 post_max_sizeよりも大きく する必要があります。

integerを使用する際、 その値はバイト単位で測られます。 このFAQに記載された 短縮表記を使用することも可能です。

gpc_order string

GET/POST/COOKIE 変数処理の順番を設定します。この命令の デフォルトの設定は、"GPC"です。例えば、これを"GP"にPHPはクッキーを 完全に無視し、GETメソッド変数を同名のPOSTメソッド変数で上書き します。

注意: このオプションは、PHP 4では利用できません。 代わりに、variables_order を使用して下さい。

auto_prepend_file string

メインファイルの前に自動的に付加されるファイルの名前を 指定します。 このファイルは、include() 関数のコール時 と同様に読み込まれます。 このため、include_path が使用されます。

特別な値 none を指 定すると、ファイルを前に追加する機能は無効となります。

auto_append_file string

メインファイルの後に自動的に追加されるファイルの 名前を指定します。 このファイルは、include() 関数のコール時と同様に 読み込まれます。 このため、include_path が使用されます。

none を値として 指定するとこの自動付加機能はオフとなります。

注意: スクリプトが exit() で終了する場合、 この自動付加機能は使用されません 。

default_mimetype string

default_charset string

4.0b4以降、PHP は、デフォルトで常にContent-type:ヘッダで character encodingを出力するようになっています。charsetの送信 を無効にするには、これを空にして下さい。

always_populate_raw_post_data boolean

常に$HTTP_RAW_POST_DATA変数にアクセス可能とします。

allow_webdav_methods boolean

PHPスクリプトの中で WebDAV http リクエスト (例:PROPFIND, PROPPATCH, MOVE, COPY, 等..) の処理を可能にします。 このディレクティブは、PHP 4.3.2以降存在しません。 これらのリクエストのPOSTデータを取得したい場合、 always_populate_raw_post_data も同時に設定する必要があ ります。

magic_quotes_gpc, magic-quotes-runtime, および magic_quotes_sybase も参照下さい。