2017-08-03 62 views
1

阵列I有对象与setter和getter获得对象的值作为在PHP

class obj{ 
    private $a; 
    private $b; 

    } 

我想创建一个数组,获取对象的唯一的值,例如

array = ["1","2"] 

试图get_object_vars但其关联数组

+2

用array_values()之后。 – Triby

+1

对于这样的私有属性,'get_object_vars'应该返回一个_empty_数组,而不是关联数组。 –

+0

为什么你不能使用关联数组?使用'array(0 =>“1”,1 =>“2”);'或'array('a'=> 1,'b'=> 2);' –

回答

5

要将关联数组压缩为索引数组,请使用array_values

array_values(get_object_vars($object)); 

然而,鉴于你有private成员变量,你可能只是想使用,而不是投get_object_vars数组:

array_values((array)$object); 

See it online at 3v4l.org.

+0

thx不要采取类似于: [“date”:“responseObject”:private] => string(10)“03-08-2017” i – fstdv

+0

这看起来像一个反射结果。查看3v4l.org的结果,在我的回答中添加了单独的'get_object_vars'没有提供'private'值的证据。 – bishop