title: Is it possible to define method with different parameters in a PHP interface?
body: <p>I'm developing a service that is being injected a Logger object but I can have 2 different kind of loggers, I'm planning on having a syslog logger and a queue message system logger. Is this possible?</p>
  
  <p>The idea is having an interface:</p>
  
  <pre><code>interface Loggable
  {
      public function log() ;
  }
  </code></pre>
  
  <p>and 2 classes that implement that interface:</p>
  
  <pre><code>class Syslogger implements Loggable
  {
      public function log()
      {
          ...
      }
  }
  
  class QMSLogger implements Loggable
  {
      public function log($queueName)
      {
          ...
      }
  }
  </code></pre>
  
  <p>The only way I could come with is having an array as a parameter and use it on one class and not using on the other one... but that is a little bit smelly :P</p>