在 PHP 中我们可以创建任何公共方法并在任何地方/任何地方使用吗?

问题描述

为了跟踪应用程序流,我使用了一个日志文件,为此,我需要每次都创建这个函数

    public function lol($lol)
    {
        $writer = new \Zend\Log\Writer\Stream(BP . '/var/log/test.log');
        $logger = new \Zend\Log\Logger();
        $logger->addWriter($writer);
        $logger->info('Simple Text Log'); // Simple Text Log
        $logger->info('AT : '. $lol); // Simple Text Log
        
    }

并调用它到类文件的任何一行

$this->lol(__FILE__."::".__LINE__);

因此,我正在为它找到一种方法,并在将此函数创建为 Global 并在我的任何应用程序中的任何位置使用后,无需扩展任何类或导入任何文件。

提前感谢@community

解决方法

像这样在单独的文件中为它创建 PHP Trait。

特征记录器 { 公共函数日志(...$arguements) { //你的代码 } }

在你的班级中像这样导入这个特征。

使用 Namespace\Traits\Logger;

class YourClass { 使用记录器;

log(/**...*/);

}

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...