I dont agree, and as u see in my snipped code it works fine.

in an abstract class u can define an implementation to define some basic
things a overwriting function in an extending class has to take care of as
well.

this includes specialy magic functions.

thats what they are made for. may be you talk about interfaces ?

"hack988 hack988" <hack...@dev.htwap.com> wrote in message
news:4d03254c0908241122r5b6d1c3csc06ec475a0797...@mail.gmail.com...
> see http://cn.php.net/manual/en/language.oop5.abstract.php
> PHP 5 introduces abstract classes and methods. It is not allowed to
> create an instance of a class that has been defined as abstract. Any
> class that contains at least one abstract method must also be
> abstract. Methods defined as abstract simply declare the method's
> signature they cannot define the implementation.
>
> You make misconception understand for abstract class,:(, correct code is:
> abstract class a {
>    abstract public function __construct(){
>
>   }
>   abstract public function __destruct(){
>
>   }
>  }
>
>  class b extends a{
>    public function __construct(){
>     echo "constructing....<br>";
>   }
>   public function __destruct(){
>     echo "destructing....<br>";
>   }
>  }
>
>  $c = new b();
> unset($c);
>
> if you want to make it work correctly that you want,plase change code to
follow
> class c {
>    public function __construct(){
>     echo "constructing....<br/>";
>   }
>   public function __destruct(){
>     echo "destructing....<br/>";
>   }
> }
>
>  class d extends c{
>
>  }
>   $e = new d();
>   unset($e);



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to