在PHP接口中是否可以定义具有不同参数的方法?
- 论坛
- 在PHP接口中是否可以定义具有不同参数的方法?
8 浏览
在PHP接口中是否可以定义具有不同参数的方法?
我正在开发一个服务,该服务被注入了一个Logger对象,但我可以拥有两种不同类型的日志记录器,我计划拥有一个syslog日志记录器和一个队列消息系统日志记录器。这可行吗?
我的想法是创建一个接口:
interface Loggable { public function log() ; }
然后创建两个实现了该接口的类:
class Syslogger implements Loggable { public function log() { ... } } class QMSLogger implements Loggable { public function log($queueName) { ... } }
我能想到的唯一办法是将一个数组作为参数,并在一个类中使用它,而在另一个类中不使用它...但这有点不好 😛