获取php对象的属性名称

时间:2014-01-31 07:04:48

标签: php object

如果我有一个php对象:

  stdClass Object
 (
[userAttributes] => stdClass Object
    (
        [dog] => stdClass Object
            (
                [type] => Canine
                [required] => *
                [options] => 
                [size] => 
            )

        [cat] => stdClass Object
            (
                [type] => Feline
                [required] => *
                [options] => 
                [size] => 
            )
       )
 )

不进行foreach循环,是否可以打印userAttributes子元素的值。我想打印“狗”和“猫”。

如果这是一个数组:

  $userAttributes['dog'] = array('type'=>'Canine'.....);

我可以做密钥($ userAttributes)并获得单词dog。是否有一个php函数与对象上的键做同样的事情?

2 个答案:

答案 0 :(得分:1)

您可以使用get_object_vars

$properties = get_object_vars( new yourFunction() );

print_r( $properties );

你也可以尝试(数组)$ obj强制转换为数组:

var_dump((array) $obj);

答案 1 :(得分:0)

尝试以下代码:

print_r($yourObject->userAttributes->dog);

编辑:

print_r(array_keys($yourObject->userAttributes)); // will print dog, cat

http://in3.php.net/array_keys