在php中读取stdClass对象

时间:2017-03-10 20:33:20

标签: php arrays soap stdclass

当我从ASP.net向PHP发送数据时,我想使用SoapClient读取数据 像这样:

stdClass Object ( [HelloWorldResult] => stdClass Object ( [string] => Array ( [0] => 0 [1] => 4546330305913 [2] => 1395/11/20 [3] => 0 ) ) ) 

如何访问数组的第一个元素(即Array[0])?

1 个答案:

答案 0 :(得分:1)

你必须阅读你的对象。

它说它是一个标准对象,包含一个包含数组的标准对象。因此,首先告诉第一个对象而不是第二个对象以数组的名称结尾,然后是您想要获得的键:

$some_obj->HelloWorldResult->string[0]

举个例子:

$some_obj = new stdClass();
$some_obj->HelloWorldResult = new stdClass();
$some_obj->HelloWorldResult->string = array(
    0,
    4546330305913,
    "1395/11/20",
    0
);

print_r($some_obj);

输出:

stdClass Object
(
    [HelloWorldResult] => stdClass Object
    (
        [string] => Array
        (
            [0] => 0
            [1] => 4546330305913
            [2] => 1395/11/20
            [3] => 0
        )
    )
)

然后访问一些值:

var_dump($some_obj->HelloWorldResult->string[0]);

输出:

int(0)