好的,我的问题如下;
我有一个用这个构造函数描述宠物的类;
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);