title: Why are the key words abstract and void in a php Interface?
body: <p>Going over The SplSubject interface on the php manual site and noticed. </p>
  
  <pre><code>SplSubject {
  
    /* Methods */
    abstract public void attach ( SplObserver $observer )
    abstract public void detach ( SplObserver $observer )
    abstract public void notify ( void )
  }
  </code></pre>
  
  <p>I can't figure out what the key word "abstract" does in the code or why it is there. Also never seen/used a function return type in php (Such as void)?</p>
  
  <p>Thank you</p>