PHP で JSON の object(stdClass) の参照したいデータが [“$t”] となっている時の取得方法と json_decode で配列を返す方法

PHP で JSON データを json_decode したらオブジェクトで返ってきました。その中の [“$t”] となっている値を取得する方法と json_decode で配列を返す時のメモです。

オブジェクトで[“$t”] となっている値を取得する

例えば、$example の published の中にある string(24) を取得したいとします。

// $example の中身がこうなっている

["published"]=>
  object(stdClass)#1 (1) {
    ["$t"]=>
    string(24) "2014-09-22T11:53:50.000Z"
}

published のデータを取得するには以下のように published -> {“\$t”} とします。

$time = htmlspecialchars( $example -> published -> {"\$t"}, ENT_QUOTES, "UTF-8");

var_dump($time)
// 結果 ↓
string(24) "2014-09-22T11:53:50.000Z"

これで、published のデータが取得できます。

JSON データを配列で返す方法

ちなみに、JSON データを json_decode した場合に配列で返す方法もありました。以下のように、json_decode の第二引数を true にするだけです。

$example = json_decode($example_json, true);

配列で返ってきてくれた方が分かりやすくてよいので、最初にこちらをやっておけばよかったかもしれないと思いました…。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です