我注意到
PHP似乎允许以下内容:
<?php
class StandAlone {
public function __construct() {
echo "I am constructed!";
}
public function __destruct() {
echo "I am destructed!";
}
}
new StandAlone;
没有任何大惊小怪.
这是一个错误,因为PHP应该引发错误吗?或者这是允许的,并且类实例只是存在于某个地方的内存中,无法直接访问该特定实例?
最佳答案 类实例不需要存储在变量中.例如,您可以将其作为参数传递给接受StandAlone对象作为其参数的函数.它存在于内存中,表示正在使用的脚本执行期间的时间.如果从未分配,则构造,销毁和释放.
call_a_function(new StandAlone);
我想不出任何实际的情况,你会调用新的Object而不分配它或传递给一个函数,但是只需定义一个函数来做一些工作而不是一个类就不会更好.