PHPを使用してPOST用のJSONデータを受け取る方法

藏色散人
リリース: 2023-03-12 08:14:02
オリジナル
10672 人が閲覧しました

前回の記事「PHPプログラムがjsonデータをどのように走査するか」では、PHPがjsonデータをどのように走査するかを紹介しましたが、この記事では引き続きPHP json関連の内容を紹介していきます。

この記事では、PHP が POST JSON データを受信する方法について説明します。

前回の記事を読んでいる方はjsonについてある程度理解しているはずなので、ここでは紹介しません。

まず最初に、3 つの重要な知識ポイントを紹介します:

1、php://input: これは必読です。 -only stream を使用すると、リクエスト本文から生データを読み取ることができます。コンテンツ タイプに関係なく、リクエストの HTTP ヘッダーの後にすべての生データが返されます。

2, file_get_contents() 関数: PHP のこの関数は、ファイルを文字列に読み取るために使用されます。

3, json_decode() 関数: この関数は JSON 文字列を受け取り、それを配列またはオブジェクトの PHP 変数に変換します。

$_POST[] グローバル変数を使用して、パブリッシュされたすべてのデータを PHP スクリプトで受信できることは誰もが知っていると思います。ただし、投稿データとして JSON 文字列を受信したい場合は失敗します。したがって、JSON 文字列を受信したい場合は、「php://input」と file_get_contents() 関数を使用して、JSON データをファイルとして受信し、それを文字列に読み取ることができます。

具体的な例を通して紹介しましょう:

json_decode() 関数を使用して JSON 文字列をデコードします。

// 从请求中获取原始数据
$json = file_get_contents('php://input'); 
// 将其转换为 PHP 对象
$data = json_decode($json);
ログイン後にコピー

最初の例:

<?php
$json = &#39;["PHP", "HTML", "javascript"]&#39;;

$data = json_decode($json);

echo $data[0];
ログイン後にコピー

出力結果:

PHP
ログイン後にコピー

2 番目の例:

<?php
$json = &#39;{
    "title": "PHP",
    "site": "PHP中文网"
}&#39;;

$data = json_decode($json);

echo $data->title;
echo "<br>";

echo $data->site;
ログイン後にコピー

出力:

PHP
PHP中文网
ログイン後にコピー

PHP中国の Web サイト プラットフォームには、ビデオ教育リソースが豊富にあります。皆さんも「PHP ビデオ チュートリアル 」を学習してください。

以上がPHPを使用してPOST用のJSONデータを受け取る方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート