加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2020-12-13 14:13:46 所属栏目:PHP教程 来源:网络整理
导读:好的,我的问题如下; 我有一个用这个构造函数描述宠物的类; public function __construct($name,$type,$age) 所以我想做的是制作一些pet对象,然后我想打印这个类的所有对象的所有属性,使它看起来像this 最好的方法是什么?我知道如何遍历对象的变量,但我主要
好的,我的问题如下;

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

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);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读