title: PHP Fatal error: Can't inherit abstract function
body: <p>I don't understand what I'm doing wrong...</p>
  
  <pre><code>abstract class Css {
      abstract protected function parse($data);
  }
  
  abstract class CssElem extends Css {
      abstract protected function parse($data);
  }
  
  class Modifier extends CssElem {
      function __construct($data = null) {
          if( $data )
              $this-&gt;parse ($data);
      }
  
      protected function parse($data) {
         // Some code...
      }
  }
  </code></pre>
  
  <p>It gives me :</p>
  
  <blockquote>
    <p>[Mon Jul  8 13:21:10 2013] PHP Fatal error:  Can't inherit abstract
    function Css::parse() (previously declared abstract in CssElem) in
    /home/arthur/NetBeansProjects/capa/CssElem.php on line 21 [Mon Jul  8
    13:21:10 2013] 127.0.0.1:41207 [500]: / - Can't inherit abstract
    function Css::parse() (previously declared abstract in CssElem) in
    /home/arthur/NetBeansProjects/capa/CssElem.php on line 21</p>
  </blockquote>
  
  <p>Line 21 is <code>abstract protected function parse($data);</code> in CssElem.</p>
  
  <p>I'm more familiar with OOP in Java, but it seems ok according to <a href="http://de2.php.net/manual/en/language.oop5.abstract.php">the doc</a>...</p>