【发布时间】:2012-03-01 08:55:14
【问题描述】:
假设您有一个唯一的对象,它被所有其他类和函数使用......类似于$application。
你将如何在你的函数中访问这个对象?
-
在每个函数中使用一个全局变量:
global $application; $application->doStuff(); -
创建一个函数,如
application(),将对象实例化为静态变量并返回它;然后在需要访问对象的任何地方使用此函数:application()->doStuff(); -
创建一个单例的东西,就像对象类中的一个静态方法,它返回唯一的实例,并使用这个方法来访问对象:
Application::getInstance()->doStuff(); -
KingCrunch & skwee:将应用程序对象作为参数传递给需要的每个函数/类
... public function __construct(Application $app, ...){ ....
如果有其他选项,请发布它们。我想知道这些选项中哪一个是最有效/被认为是“最佳实践”。
【问题讨论】:
-
您有具体问题,还是只是想列个清单?