如何访问输出为的PHP Associative数组元素:
[highlighting] => stdClass Object
(
[448364] => stdClass Object
(
[Data] => Array
(
[0] => Tax amount liability is .......
Run Code Online (Sandbox Code Playgroud)
我想访问键[0]中的字符串值.我想做的事情如下:
print myVar->highlighting->448364->Data->0
Run Code Online (Sandbox Code Playgroud)
但这两个数字/整数似乎有问题.
编辑:
我将在这里给出一些历史,从哪里获得myVar.我使用的json_decode()是:
$myVar = json_decode(url)
Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的对象:
stdClass Object
(
[page] => stdClass Object
(
[1] => stdClass Object
(
[element] => stdClass Object
(
[background_color] => stdClass Object
...
Run Code Online (Sandbox Code Playgroud)
当我打印时print_r($arr->page):
stdClass Object
(
[1] => stdClass Object
(
[element] => stdClass Object
(
[background_color] => stdClass Object
(
Run Code Online (Sandbox Code Playgroud)
但这没有任何印刷品:
print_r($arr->page->{"1"});
Run Code Online (Sandbox Code Playgroud)
这会输出错误:
print_r($arr->page->1);
Run Code Online (Sandbox Code Playgroud)
解析错误:语法错误,意外T_LNUMBER,期待T_STRING或T_VARIABLE或'{'或'$'i
如何访问"1"元素?
更新:
我也试着$arr->page[1]和$arr->page["1"],但得到这个错误:
致命错误:不能使用stdClass类型的对象作为数组
更新2:
var_dump($arr->page);
Run Code Online (Sandbox Code Playgroud)
打印这个:
object(stdClass)#3 (1) { [1]=>
object(stdClass)#4 (1) {
["element"]=>
object(stdClass)#5 (20) {
["background_color"]=>
object(stdClass)#6 (7) {
Run Code Online (Sandbox Code Playgroud) 也许是一个简单的问题,但我不明白.当密钥以数字开头时,如何访问PHP对象?
$myArray->24h_sel
$myArray["24h_sel"] // did not work
Run Code Online (Sandbox Code Playgroud)