2016-09-01 36 views
0

リモートWebサービスから(Curlコール経由で)JSONオブジェクトが返されました。このObjectからhashidくださいPHP:奇妙な "キー"名でオブジェクト内のオブジェクトにアクセスするには?

stdClass Object ([https://example.com] => stdClass Object ([hash] => 8 [id] => 277)) 

私のような値にアクセスすると仮定しています方法:オブジェクトは、このようなものでしょうか?

私が試した:

$Object = json_decode($curl_return); 

echo $Object->hash; // Didn't work! 
echo $Object[0]->hash; // Didn't work! 
echo $Object[0]['hash']; // Didn't work! 
echo $Object['https://example.com']->hash; // Didn't work! 

親切に助けてください。

+0

も見逃さないようにしてください:あなたがしなければならないのは、角括弧で、通常のarray access構文を使用して値にアクセスすることです

http://stackoverflow.com/q/33157296/ 3933332ここに無効なプロパティ名があるためです。 – Rizier123

答えて

1

これは動作します:

$url = 'https://example.com'; 

echo $Object->$url->hash; 

を代わりにあなたとtrueに2つ目の引数を設定することで、代わりに\stdClassの連想配列にJSONをデコードすることができます

json_decode($json, true); 

https://secure.php.net/manual/en/function.json-decode.php

1

json_encode()に2番目の引数としてTRUEを渡し、配列を返します。オブジェクト。

echo($Object['https://example.com']['hash']); 
関連する問題