如何创建在类函数之外可用的类函数中创建的变量?
例如,我的主类的构造函数创建了一个日志记录类的实例。我希望这个$ log变量在其他类中可用(使用global关键字)我会假设。
这可能吗?
答案 0 :(得分:1)
您可以使用静态。
class Main
{
static private $log;
public function __construct()
{
self::$log = new Log();
}
static public function getLog()
{
return self::$log;
}
}
现在,您可以使用
访问$ logMain::getLog();
答案 1 :(得分:1)
使用全局会破坏OOP的目的。 OOP旨在减轻依赖性并为模块化使用提供代码控制。
您只是简单地处理应用程序设计错误,而是设计易于访问日志记录实例。那是;实例化您的日志记录类并将实例存储在可由其他依赖它的类访问(按设计)的位置。一种“注册表”。