Instance.php 864 B

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