ホームページ  >  記事  >  バックエンド開発  >  PHPの$_REQUEST

PHPの$_REQUEST

WBOY
WBOYオリジナル
2016-06-23 14:30:281201ブラウズ

其实这是在PHP的配置文件里面设置的,让我们来看一下php.ini这个配置文件,在第466行左右有如下内容:  ; This directive describes the order in which PHP registers GET, POST, Cookie,  ; Environment and Built-in variables (G, P, C, E & S respectively, often  ; referred to as EGPCS or GPC). Registration is done from left to right, newer  ; values override older values.  variables_order = "EGPCS"    这个EGPCS就是说明用$_REQUEST数组获取内容的优先级,其字母的含义分别代表为:E代表$_ENV,G代表$_GET,P代表$_POST,C代表$_COOKIE,S代表$_SESSION。后面出现的数据会覆盖前面写入的数据,其默认的数据写入方式就是EGPCS,所以POST包含的数据将覆盖GET中使用相同关键字的数据。
====================================================================================================

PHP にはフォーム データを受け入れるための $_request、$_post、$_get があります。それらの違いは何ですか?また、いつ使用するのが最適ですか?
1. $_request、$_post、$_getの違いと特徴
$_REQUEST[]は$_POST[] $_GET[]の機能を持ちますが、$_REQUEST[]の方が遅いです。 post メソッドと get メソッドを通じて送信されたすべてのデータは、$_REQUEST 配列を通じて取得できます
2. $_post と $_get の違いと特徴
1. Get はサーバーからデータを取得すること、post はサーバーにデータを送信することですサーバ。
2. Get は、送信されたフォームの ACTION 属性が指す URL にパラメーター データ キューを追加します。値はフォーム内の各フィールドに 1 対 1 で対応し、URL で確認できます。 Post は、HTTP post メカニズムを使用して、フォームの各フィールドとそのコンテンツを HTML HEADER に配置し、それを ACTION 属性が指す URL アドレスに送信します。ユーザーはこのプロセスを見ることができません。
3. get メソッドの場合、サーバーは Request.QueryString を使用して変数の値を取得します。 post メソッドの場合、サーバーは Request.Form を使用して送信されたデータを取得します。
4. get によって送信されるデータの量は少なく、2KB を超えることはできません。郵便で送信されるデータの量は比較的多く、通常はデフォルトでは制限がありません。ただし、理論上、最大量は IIS4 では 80 KB、IIS5 では 100 KB です。
5. get のセキュリティは非常に低く、post のセキュリティは高くなります。
例: mypage?id=1 は、値を転送する GET メソッドです。$_request と $_get を使用して値を受け取ることができます。

phpの$_request、$_post、$_getの違い


phpにはフォームデータを受け取るための$_request、$_post、$_getがあります。違いは、いつどちらを使用するのが最適かということです。

1. $_request、$_post、$_getの違いと特徴

$_REQUEST[]には$_POST[] $_GET[]の機能がありますが、$_REQUEST[]の方が遅いです。 post メソッドと get メソッドを通じて送信されたすべてのデータは、$_REQUEST 配列を通じて取得できます

2. $_post と $_get の違いと特徴

1. Get はサーバーからデータを取得すること、post はデータを送信することですサーバーに。

2. Get は、送信されたフォームの ACTION 属性が指す URL にパラメーター データ キューを追加します。値はフォーム内の各フィールドに 1 対 1 で対応し、URL で確認できます。 Post は、HTTP post メカニズムを使用して、フォームの各フィールドとそのコンテンツを HTML HEADER に配置し、それを ACTION 属性が指す URL アドレスに送信します。ユーザーはこのプロセスを見ることができません。
3. get メソッドの場合、サーバー側は Request.QueryString を使用して変数の値を取得します。 post メソッドの場合、サーバー側は Request.Form を使用して送信されたデータを取得します。
4. get によって送信されるデータの量は少なく、2KB を超えることはできません。郵便で送信されるデータの量は比較的多く、通常はデフォルトでは制限がありません。ただし、理論上、最大量は IIS4 では 80 KB、IIS5 では 100 KB です。
5. get のセキュリティは非常に低く、post のセキュリティは高くなります。

例: mypage?id=1 は値を渡す GET メソッドです。渡された値を受け入れるには $_request と $_get を使用できます

-------------- ------------------ -------------------------------- ------------------ -------------------------------- ------------------ ---------------

HTTP GET 変数: $_GET

注: PHP 4.1.0 で使用されます。以降のバージョン。以前のバージョンでは、$HTTP_GET_VARS が使用されていました。

HTTP GET メソッド経由で渡される変数の配列。は自動グローバル変数です。
これは「スーパーグローバル」、または自動グローバル変数として説明できます。これは、すべてのスクリプトで機能することを意味します。 $HTTP_GET_VARS のように、関数またはメソッド内でアクセスするためにグローバル $_GET を使用する必要はありません。
$HTTP_GET_VARS には同じ情報が含まれていますが、自動グローバル変数ではありません (注: $HTTP_GET_VARS と $_GET は異なる変数であり、PHP では異なる方法で処理されます)。
register_globals ディレクティブが設定されている場合、つまり $_GET 配列と $HTTP_GET_VARS 配列が分離されている場合、これらの変数はすべてのスクリプトでも使用できます。関連情報については、「レジスタ グローバルの使用」のセキュリティ関連の章を参照してください。これらの個々のグローバル変数は、自動グローバル変数ではありません。
HTTP POST 変数: $_POST
注: PHP 4.1.0 以降のバージョンで使用されます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。