php - 在 PHP 中,是否可以在不调用类的构造函数的情况下创建类的实例?

标签 php oop

无论如何,是否可以在不调用其构造函数的情况下创建 php 类的实例?

我有 A 类,在创建它的实例时传递文件,在 A 类的构造函数中打开文件。

现在在 A 类中,有一个我需要调用但不需要传递文件的函数,因此不需要使用打开文件的构造函数功能,因为我没有传递文件。

所以我的问题是,是否可以通过任何方式创建 PHP 类的实例而不调用其构造函数?

注意 我不能像在函数中使用某些类属性那样将函数设为静态。

最佳答案

在你的情况下,我建议考虑重新设计你的代码,这样你就不需要做这样的事情,但要回答你的问题:是的,这是可能的

您可以使用 ReflectionClass它的方法newInstanceWithoutConstructorPHP 5.4 中引入 然后无需调用其构造函数即可轻松创建类的实例:

$reflection = new ReflectionClass("ClassName");
$instance = $reflection->newInstanceWithoutConstructor(); //That's it!

关于php - 在 PHP 中,是否可以在不调用类的构造函数的情况下创建类的实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2555883/

相关文章:

java - 在类之间共享对象并建立层次结构

c# - 继承和传递参数

Java:如何将点值传递给折线?

php - 使用 Composer 在 Laravel 5.x 中安装 Google 的 ClientAPI

php - 在输出上显示列名称(Android ListView )

.net - 工厂类属于哪个命名空间?

java - 为什么包装类、字符串...是final的?

javascript - 使用 jQuery 动态向表添加行

php - MySQL/PHP 过滤器结果列表错误

php - 获取xml中的特定节点?