繁体   English   中英

PHP OOP中的实例化类

[英]Instantiation classes in PHP OOP

我正在编写一个包含大约10个课程的应用程序来完成不同的课程。 我有2个选项来实例化它们。
1-拥有一个文件(或基类)来实例化所有文件。 通过这种方式,我确信我实例化了所有类,并且可以在所有类中使用它们。 通过这种方式,我可以使用__outoload()而不是包含文件。

2-分别在每个文件中实例化所需的类。 绝对这样,我需要包含不同的文件。

哪种方式更好? 为什么?

这取决于多种因素,例如您的网站负载量。 如果您的网站使用频繁,则不希望加载一堆不必要的对象。 关于在何处实例化PHP对象有不同的意见,但根据我的经验,最好include() (或require()或其他)文件,然后在其类文件中实例化其对象。 所以我将include('class_A.php'); 然后在class_A.php里面我将$object = new Object()' 作为一个随机的琐事,请注意_once()函数( include_once()require_once() )比普通的vanilla版本花费更多的周期。

使用解决方案2,每个类一个文件,并使用PHP自动加载

工厂模式是您的选择。

你有一个主类(工厂)知道如何实例化你的每个类

将它们放在单独的文件中总是更好。 它使代码更清晰1000倍。

对于加载php文件,你要使用__autoload (如你所见:php甚至包含对这种情况的原生支持)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM