$_GET と $_POST
post と get は、ページ送信の 2 つの方法を参照します。
get: パラメータは URL に反映され、ページめくりに使用でき、単純なクエリでは 2k 未満のコンテンツしか受信できません。制限があり、コンテンツが表示されるため、セキュリティが低下します。
post: ページ フォームの送信、ファイルのアップロード、その他の操作に使用されます。サイズ制限はなく、アドレスバーには表示されません。
$_POST 変数
$_POST 変数は、HTTP POST メソッドによって送信された変数名と値を内容とする配列です。
$_POST変数は、method="post"でフォームから値を収集するために使用されます。
POST メソッドを使用してフォームから送信されたメッセージは誰にも見えず (ブラウザのアドレス バーには表示されません)、送信される情報量に制限はありません
$_POST を使用する理由?
HTTP POST 経由で送信された変数は URL には表示されません。
変数には長さの制限はありません。
ただし、URL に変数が表示されないため、ページをブックマークすることはできません。
$_GET変数
$_GET変数は、method="get"でフォームから値を収集するために使用されます。直感的なものは、たとえば「wordpress」で検索したときに表示されるパラメータです。 Baidu で、I リクエストされた URL は http://www.baidu.com/s?ie=utf-8&bs=wordpress&f=8&rsv_bp=1&wd=wordpress&inputT=0 で、「?」以降のパラメータは $_GET で取得できます。各パラメータは「&」で区切られます。
$_GET 変数は、HTTP GET メソッドによって送信された変数名と値を内容とする配列です。
GET メソッドを使用してフォームから送信された情報は誰でも見ることができます (ブラウザのアドレス バーに表示されます)。送信される情報量には制限があります (最大 100 文字)。パラメータ 無制限ではありませんが、基本的に要件を満たすことができます。
$_GET を使用する理由
注: $_GET 変数を使用すると、すべての変数名と値が URL に表示されます。したがって、パスワードやその他の機密情報を送信する場合は、この方法を使用しないでください。ただし、変数は URL に表示されるため、ページをブックマークできます。場合によっては、これが便利です。
注: HTTP GET メソッドは、大きな変数値には適していません。値は 100 文字を超えることはできません。
****$_POST と $_GET の違い:
1. 前者は URL の列の送信内容を見ることができませんが、後者は URL の列の内容を見ることができます。
2.Get メソッドは変数の値を取得するために Request.QueryString を使用する必要がありますが、Post メソッドは送信されたコンテンツにアクセスするために Request.Form を使用します
3. 前者によって送信されるコンテンツのサイズは比較的大きく、セキュリティは比較的高く、実行効率はわずかに低くなります。後者のアップロード サイズは小さいですが、セキュリティは低く、実行効率は高くなります
4. Get メソッドを使用してデータを送信すると、ログイン ページなどのセキュリティの問題が発生します。 , Get メソッドでデータを送信すると、URL にユーザー名とパスワードが表示されます。ページがキャッシュできる場合、または他のユーザーが顧客のマシンにアクセスできる場合は、履歴レコードからユーザーのアカウントとパスワードを取得できるため、これをお勧めします。フォームの送信には Post メソッドを使用します。Post メソッドによってフォームが送信されます。ページの一般的な問題は、ページが更新されると、Request.Form と Request.QueryString が異なるソースからパラメーターを受け取ることです。前者はフォームからパラメータを受け取り、後者は URL パラメータからパラメータを受け取ります。
Request.Form: POSTで送信されたデータを取得します(Formで送信されたデータを受信します);
Request.QueryString: アドレスバーパラメータを取得します(GETで送信されたデータ)
以上がPHP の $_GET と $_POST の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。