PHPでJSONデータの解析と生成を行う方法

PHPでは、組み込みのjson_encode()関数でPHP配列やオブジェクトをJSON文字列に変換し、json_decode()関数でJSON文字列をPHP配列やオブジェクトにパースします。

以下にいくつかの例を示します。それらはJSONデータの解析および生成する方法を示しています。

  1. PHP配列をJSON文字列に変換する:
$data = array("name" => "John", "age" => 30, "city" => "New York");
$jsonData = json_encode($data);
echo $jsonData;

出力がネイティブな日本語になります

{"name":"John","age":30,"city":"New York"}
  1. PHPオブジェクトをJSON文字列に変換する:
class Person {
public $name;
public $age;
public $city;
}
$person = new Person();
$person->name = "John";
$person->age = 30;
$person->city = "New York";
$jsonData = json_encode($person);
echo $jsonData;

出力

{"name":"John","age":30,"city":"New York"}
  1. JSON文字列をPHP配列にパースする:
$jsonData = '{"name":"John","age":30,"city":"New York"}';
$data = json_decode($jsonData, true);
print_r($data);

ネイティブな日本語で言い換える:

Array
(
[name] => John
[age] => 30
[city] => New York
)
  1. JSON 文字列を PHP オブジェクトに解析する
$jsonData = '{"name":"John","age":30,"city":"New York"}';
$person = json_decode($jsonData);
echo $person->name;
echo $person->age;
echo $person->city;

文章を出力する

John
30
New York

json_encode() 関数では、生成される JSON 文字列の書式を制御する縮みやソートなどのオプションのパラメーターを指定できます。json_decode() 関数でも、解析される JSON 文字列の挙動(配列を返すかオブジェクトを返すかなど)を指定するオプションのパラメーターを指定できます。

bannerAds