ホームページ バックエンド開発 PHPの問題 PHPでJSON文字列を配列またはオブジェクトに変換する方法

PHPでJSON文字列を配列またはオブジェクトに変換する方法

Apr 20, 2023 am 10:12 AM

PHP を Web 開発に使用する場合、JSON データを扱うことがよくあります。受け取ったデータが文字列形式の JSON データである場合、後続の処理のために PHP のオブジェクトまたは配列に変換する必要があります。この記事では、文字列形式の JSON データをオブジェクトまたは配列に変換する方法について説明します。

1. 文字列を JSON オブジェクトに変換する

まず、PHP の json_decode() 関数を使用して、JSON 文字列を JSON オブジェクトに変換する必要があります。この関数の構文は次のとおりです:

json_decode(string $json, bool $assoc = false, int $depth = 512, int $options = 0): mixed
ログイン後にコピー

このうち、$json パラメータは変換する必要がある JSON 文字列を示し、$assoc パラメータは変換する必要があることを示します。変換された JSON オブジェクトを変換するかどうか。これは配列の形式です。$ Depth パラメータは最大再帰深さを表し、$options パラメータは変換中のオプションを表します。

サンプルコードは以下の通りです:

$json_string = '{"name":"张三","age":18}';
$json_obj = json_decode($json_string);
var_dump($json_obj);
ログイン後にコピー

出力結果:

object(stdClass)#1 (2) {
  ["name"]=>
  string(6) "张三"
  ["age"]=>
  int(18)
}
ログイン後にコピー

上記の通り、json_decode()関数を使用してJSONを変換します。文字列を JSON オブジェクトに変換すると、PHP で stdClass オブジェクトが返されます。

2. 文字列を JSON 配列に変換する

JSON 文字列を PHP の配列に変換する必要がある場合は、$assoc パラメーターを # に設定できます。 # #真実###。サンプルコードは次のとおりです。 <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">$json_string = '[{&quot;name&quot;:&quot;张三&quot;,&quot;age&quot;:18},{&quot;name&quot;:&quot;李四&quot;,&quot;age&quot;:20}]'; $json_arr = json_decode($json_string, true); var_dump($json_arr);</pre><div class="contentsignin">ログイン後にコピー</div></div>出力結果:

array(2) {
  [0]=>
  array(2) {
    ["name"]=>
    string(6) "张三"
    ["age"]=>
    int(18)
  }
  [1]=>
  array(2) {
    ["name"]=>
    string(6) "李四"
    ["age"]=>
    int(20)
  }
}
ログイン後にコピー

上記の例からわかるように、変換後のデータは、元は

{ などの JSON オブジェクトです。 "name":" Zhang San", "age":18}

は、PHP では ["name" => "Zhang San", "age" => のように配列形式に変換されます。 ; 18]3. 文字列を JSON オブジェクトの配列に変換する

実際のアプリケーションでは、複数の JSON オブジェクトで構成される JSON 文字列を PHP のオブジェクトの配列に変換する必要がある場合があります。

サンプル コードは次のとおりです。

$json_string = '[{"name":"张三","age":18},{"name":"李四","age":20}]';
$json_obj_arr = json_decode($json_string);
var_dump($json_obj_arr);
ログイン後にコピー

出力結果:

array(2) {
  [0]=>
  object(stdClass)#2 (2) {
    ["name"]=>
    string(6) "张三"
    ["age"]=>
    int(18)
  }
  [1]=>
  object(stdClass)#3 (2) {
    ["name"]=>
    string(6) "李四"
    ["age"]=>
    int(20)
  }
}
ログイン後にコピー

JSON 文字列から配列への変換と比較して、オブジェクト配列への変換は複雑です。手術。このサンプル コードでは、

json_decode()

関数を使用して文字列を JSON オブジェクトの配列に変換します。返される結果は、複数の stdClass オブジェクトで構成される配列です。 要約すると、JSON データの処理は Web 開発プロセスの重要な部分です。この記事の導入を通じて、PHP で JSON 文字列をオブジェクトまたは配列に変換する方法と、複数のオブジェクトで構成される JSON 文字列を PHP でオブジェクトの配列に変換する方法を学習しました。

以上がPHPでJSON文字列を配列またはオブジェクトに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)