【发布时间】:2014-10-31 08:50:39
【问题描述】:
我的问题类似这样:Creating anonymous objects in php
不同的是我希望一个类被无名类扩展。
编辑:好的,不清楚,这里是例子:
$anonim_obj = new stdClass(array(
"foo" => function() { echo "foo"; },
"bar" => function($bar) { echo $bar; }
));
我想要它:
$anonim_obj = new stdClass extends BaseClass (array(
"foo" => function() { echo "foo"; },
"bar" => function($bar) { echo $bar; }
));
【问题讨论】:
-
什么意思?你的意思是你有一个类,并想给它添加属性?你可以。在 PHP 中,这称为对象重载(不好的术语):
$instance->newProperty = 123;在实例上创建一个新的公共属性。但实际上,你不应该这样做。可以通过分配闭包来分配方法,但这更错误,因为这些方法本身就是Closure对象的实例。此外:动态属性访问速度较慢,使您的代码更容易出错且更难维护 -
已更新,希望现在一切都清楚
标签: php