ホームページ >バックエンド開発 >PHPの問題 >PHPが値を受け取るグローバル配列とは何ですか?

PHPが値を受け取るグローバル配列とは何ですか?

PHPz
PHPzオリジナル
2023-04-26 09:06:22841ブラウズ

PHP は、入力値を受け取ることによってデータを操作および処理できる高級プログラミング言語です。 PHP には、入力値を受け取るために使用できるグローバル配列が多数あります。この記事では、PHP で一般的に使用されるグローバル配列を紹介し、その特徴と使用法について説明します。

  1. $_GET

$_GET は PHP のスーパーグローバル変数で、HTTP GET リクエストのパラメータを受け取るために使用されます。 HTTP GET リクエストは、サーバーからリソースを取得するために使用されるリクエスト メソッドです。これらのリクエスト パラメーターは、キーと値のペアの形式でサーバーに渡されます。 get メソッドを使用してフォームが送信されると、フォーム内のデータが $_GET 配列に自動的に追加されます。例:

Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">

フォームを送信するとき、PHP次のように、キーと値のペアを $_GET 配列に追加します。

Array
(

[name] => John
[email] => john@example.com

)

$_GET 配列でパラメータを取得するときは、次のコードを使用できます:

$name = $_GET['name'];
$email = $_GET['email'];

$ は_GET 配列 すべてのキーと値のペアは文字列型です。

  1. $_POST

$_POST は、HTTP POST リクエストのパラメーターを受け取るために使用される、PHP のもう 1 つのスーパー グローバル変数です。 HTTP POST リクエストもリクエスト メソッドであり、データを受信するためにサーバーに送信するために使用されます。 $_GET と比較すると、$_POST によって送信されるリクエスト パラメーターは URL アドレス バーに表示されません。 post メソッドを使用してフォームが送信されると、フォーム内のデータが $_POST 配列に自動的に追加されます。例:

Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">

フォームを送信するとき、PHP次のように、キーと値のペアを $_POST 配列に追加します。

Array
(

[name] => John
[email] => john@example.com

)

$_POST 配列のパラメーターを取得するとき、次のコードを使用できます:

$name = $_POST['name'];
$email = $_POST['email'];

$_GET と比較すると、$ _POST はパラメータがアドレス バーに表示されないため安全ですが、$_GET よりも遅くなります。

  1. $_FILES

$_FILES も PHP のスーパーグローバル変数で、HTTP POST リクエストからファイルのアップロードを受信するために使用されます。アップロードするファイルは、HTTP POST リクエストを通じてサーバーに送信できます。ファイル アップロード フォームを使用すると、フォーム内のデータが $_FILES 配列に自動的に追加されます。例:

Select image to upload:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload Image" name="submit">

フォームを送信してアップロードするファイルを選択すると、PHP は次のように $_FILES 配列に属性を追加します:

Array
(

[fileToUpload] => Array
    (
        [name] => example.jpg
        [type] => image/jpeg
        [tmp_name] => /tmp/phpVJcax8
        [error] => 0
        [size] => 69130
    )

)

アップロードされたファイルを取得するときは、次のコードを使用できます:

$target_dir = "uploads/";
$target_file = $target_dir .basename($_FILES"fileToUpload");
move_uploaded_file ( $_FILES["fileToUpload"]["tmp_name"], $target_file);

アップロードされたファイルはサーバーによって指定されたフォルダーに保存されることに注意してください。

  1. $_COOKIE

$_COOKIE は、クライアント コンピューターに保存されている Cookie 値を受け取るために使用される PHP のスーパー グローバル変数です。 Cookie は、クライアント コンピュータに保存され、サーバーとのデータ通信に使用される小さなテキスト ファイルです。 PHP では、setcookie() 関数を使用して Cookie 値を設定できます。 Cookie が設定されている場合、$_COOKIE 配列を使用して Cookie 値を受け取ることができます。例:

setcookie("user", "John Doe", time() 3600, "/"); // Cookie を設定します
echo $_COOKIE["user"]; // Cookie を出力しますvalue

上記のコードでは、setcookie() 関数は、「user」という名前の cookie に「John Doe」という値を設定し、設定時刻の 1 時間後に期限切れになります。 echo ステートメントでは、$_COOKIE 配列が「user」という名前の Cookie の値を受け取り、その値を出力します。

$_COOKIE 配列を使用して Cookie 値を取得する場合、Cookie 名を引用符で囲む必要がないことに注意してください。

  1. $_SESSION

$_SESSION は、PHP のスーパーグローバル変数でもあり、セッション データを保存するために使用されます。セッション データは、Cookie よりも安全なデータ保存方法です。 $_SESSION 変数を使用すると、データはクライアント マシンではなくサーバー側に保存されます。 PHP では、session_start() 関数を通じてセッションを開始できます。例:

session_start();
$_SESSION["favcolor"] = "green";
$_SESSION["favanimal"] = "cat";
echo "セッション変数";

上記のコードでは、session_start() 関数がセッションを開始し、$_SESSION["favcolor"] 変数と $_SESSION["favanimal"] 変数を通じて 2 つの値を保存します。 。出力ステートメントでは、$_SESSION 配列が 2 つの変数の値を受け取り、それらを出力します。

$_SESSION 配列を使用してセッション データを取得する場合、スクリプト内で session_start() 関数を使用してセッションを開始する必要があることに注意してください。

要約:

PHP では、$_GET、$_POST、$_FILES、$_COOKIE、$_SESSION の 5 つのグローバル配列を使用して、クライアントから送信されたデータを受信できます。これらのグローバル配列を使用すると、クライアントから送信されたデータを簡単に取得し、さまざまなデータ処理操作を実行できます。グローバル配列を使用する場合は、変数名の大文字と小文字の区別とデータ型の変換に注意する必要があります。

以上がPHPが値を受け取るグローバル配列とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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