1

プロパティ#textを持つStdClassの一部にアクセスしようとしています。PHPはコメントに「#」を使用しているため、PHPがコメントとしてではなくそれを解析するのに問題があります。StdClassの例を以下に示します

stdClass Object ( [artist] => stdClass Object ( [name] => John Denver [mbid] => 34e10b51-b5c6-4bc1-b70e-f05f141eda1e [url] => http://www.last.fm/music/John+Denver [image] => Array ( [0] => stdClass Object ( [#text] => http://userserve-ak.last.fm/serve/34/521025.jpg [size] => small

そして私はそれにアクセスしようとしました:

$json->artist->image[0]->#text

しかし、どうすれば「#」をエスケープするか、phpに別の方法で解釈するように指示できますか。または、#textプロパティを見つけるための別の形式はありますか。

私も試しました:

$json['artist']['image'][0]['#text']

しかし、エラーが発生します。これは単純なことだと思いますが、現時点では本当に私を魅了しています。

4

3 に答える 3

4

次のコードを使用して、このようなプロパティにアクセスできます。

$object->{'#text'}
于 2012-06-05T11:44:23.953 に答える
0

JSONデータのようです。したがって、デコードするときに、2番目のパラメーターをtrueに設定することもできます。

$json = json_decode($input, true);

これで、これを使用できるようになります。

$json['artist']['image'][0]['#text']
于 2012-06-05T11:47:44.453 に答える
0

別の答えを引用すると、キーを変数に入れて、この変数を介してアクセスすることができます。

$var='myvarwithstrangecharacters$asdfas#';

$object->$var;//do whatever you want

from: ドル記号の付いたPHPオブジェクト属性にアクセスするにはどうすればよいですか?

于 2012-10-30T22:28:31.290 に答える