Web サイトを開発する場合、サーバー側スクリプト言語としての PHP は、フォーム送信、ファイルのアップロードとダウンロード、AJAX 非同期リクエストなどの特定の対話型機能を実装するためにクライアントに値を返す必要があることがよくあります。この記事では、PHP がクライアントに値を返すための一般的なメソッドをいくつか紹介します。
PHP での最も一般的な出力方法は、echo ステートメントを通じてクライアント ブラウザにデータを直接出力することです。たとえば、次のコードを通じてブラウザにテキストを出力できます:
echo "Hello World";
?>
Inこのようにして、クライアント上でページを開くと、ブラウザに「Hello World」と表示されることがわかります。
echo ステートメントは、return ステートメントのようにスクリプトの実行を終了しませんが、スクリプトが終了するか、exit ステートメントまたは die ステートメントに遭遇するまで出力を続けます。
echo は文字列の出力に加えて、変数、配列、オブジェクトなどの他のタイプのデータも出力できます。例:
$name = "PHP";
$age = 25;
$arr = array(1, 2, 3);
echo $ name;
echo $age;
print_r($arr);
?>
このようにして、PHP、25、[1, 2, 3] をブラウザに出力できます。価値。
文字列の出力に加えて、json_encode 関数を使用して PHP 配列またはオブジェクトを JSON 形式のデータに変換し、それを血管内のエコーを介してブラウザーを表示します。このメソッドは、AJAX 非同期リクエストなどのシナリオを簡単に実装できます。
たとえば、最初に PHP 配列を定義します。
$arr = array(
'name' => 'PHP', 'version' => '7.4.23', 'author' => 'The PHP Group');
?>次に、json_encode を使用して JSON 形式のデータに変換し、出力します:
header('Content-type: application/json');
$arr = array('name' => 'PHP', 'version' => '7.4.23', 'author' => 'The PHP Group');
echo json_encode($arr);
?>これにより、配列 $arr が {"name":"PHP" に変換されます,"version":"7.4.23","author":"PHP Group"}のJSON形式のデータがブラウザに出力されます。ここでは header 関数を使用して、返されるデータ型が JSON であることを示す Content-type ヘッダー情報を送信していることに注意してください。
- ヘッダー リダイレクト
もう 1 つの一般的な方法は、リダイレクトに header 関数を使用することです。例:
header("Location: https://www.example.com/");
?>これは次の方法です。スクリプトを実行すると、ブラウザは自動的に https://www.example.com/ アドレスにジャンプします。
絶対パスの使用に加えて、リダイレクトに相対パスを使用することもできます。例:
header("Location: ../index.html" );
?>ここでの ../ は上位ディレクトリに戻るという意味なので、上位ディレクトリのindex.htmlページにジャンプします。
ヘッダ関数は出力の前に呼び出す必要があることに注意してください。そうしないと、「ヘッダはすでに送信されました」などのエラーが発生します。
- setcookie Cookie の設定
setcookie 関数を使用して、クライアントにデータを返すだけでなく、Cookie 情報を設定することもできます。例:
setcookie("username", "admin", time() 3600); // Cookie を設定し、1 時間有効です
?>これにより、ユーザー名、値が admin という名前の Cookie が設定され、ブラウザーで 1 時間有効になります。クライアントが再度 Web サイトにアクセスすると、サーバーは Cookie 情報を読み取ります。
setcookie 関数は出力の前に呼び出す必要があり、setcookie 関数の後に出力を呼び出すことはできないことに注意してください。
概要
上記の 4 つのメソッドは、PHP がクライアントにデータを返すための一般的なメソッドです。シナリオが異なると、出力に異なるメソッドが必要になります。 header、setcookie、その他の関数を使用する場合は、不要なエラーを避けるために、呼び出し順序、出力の有無、その他の問題に注意してください。
以上がPHPがクライアントに値を返す方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。