Instance.php 894 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. /**
  3. * 注册一个写日志的插件,由项目本身去实现是否写日志,当框架在抛出异常的时候会触发写日志的操作
  4. */
  5. namespace Qii\Logger;
  6. class Instance
  7. {
  8. const VERSION = '1.2';
  9. /**
  10. * loger writer
  11. */
  12. private $loggerHooker;
  13. public function __construct(Writer $hooker)
  14. {
  15. $this->setHooker($hooker);
  16. }
  17. /**
  18. * 设置写日志的类
  19. */
  20. public function setHooker(Writer $hooker)
  21. {
  22. $this->loggerHooker = $hooker;
  23. }
  24. /**
  25. * 设置日志文件名称
  26. */
  27. public function setFileName($fileName)
  28. {
  29. if (method_exists($this->loggerHooker, 'setFilename')) {
  30. $this->loggerHooker->setFilename($fileName);
  31. }
  32. }
  33. /**
  34. * 调用写日志的方法
  35. */
  36. public function writeLog($loger)
  37. {
  38. if (method_exists($this->loggerHooker, 'writeLog')) {
  39. $this->loggerHooker->writeLog($loger);
  40. }
  41. }
  42. }