php – 列出某个类的所有对象

前端之家收集整理的这篇文章主要介绍了php – 列出某个类的所有对象前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
好的,我的问题如下;

我有一个用这个构造函数描述宠物的类;

public function __construct($name,$type,$age)

所以我想做的是制作一些pet对象,然后我想打印这个类的所有对象的所有属性,使它看起来像this

最好的方法是什么?我知道如何遍历对象的变量,但我主要关心的是如何遍历某个类的所有对象.如果有人能给我看一些代码示例,我会很高兴,特别是如果有一种方法可以不使用数组.

任何帮助表示赞赏!

通常,您可能希望有一些方法来跟踪您创建的实例,可能是在数组中或某种类型的包含类.

但是为了参数,您可以使用get_defined_vars()检查当前作用域中的所有变量,递归搜索您找到的任何数组或对象,如下所示:

function findInstancesOf($classname,$vars)
{
    foreach($vars as $name=>$var)
    {
        if (is_a($var,classname)) 
        {
             //dump it here
             echo "$name is a $classname<br>";

        }
        elseif(is_array($var))
        {
             //recursively search array     
             findInstancesOf($classname,$var);
        }
        elseif(is_object($var))
        {
             //recursively search object members
             $members=get_object_var($var);     
             findInstancesOf($classname,$members);
        }
    }
}

$vars = get_defined_vars();
findInstancesOf('MyPetClass',$vars);

猜你在找的PHP相关文章