ID:               33698
 User updated by:  jason at hybd dot net
 Reported By:      jason at hybd dot net
 Status:           Bogus
 Bug Type:         Feature/Change Request
 Operating System: *
 PHP Version:      5.0.4
 New Comment:

I know PHP != Java, but surely this sort of stuff should be documented?
Most people will expect interfaces to work like Java interfaces or C++
"interfaces" (Pure virtual abstract methods), as many other languages
seem to follow this behaviour. As I said this is debatable as it
depends how you look at things, and likewise it is fairly easy to work
round this issue.


Previous Comments:
------------------------------------------------------------------------

[2005-07-15 12:44:04] [EMAIL PROTECTED]

PHP != Java

------------------------------------------------------------------------

[2005-07-14 17:35:15] jason at hybd dot net

Description:
------------
This is debateable if this is a bug or not. Personally, I don't regard
it as a bug.

Classes that implement >1 interface that share common methods raise
fatal errors. Because of the abstract nature of interfaces, no error or
warning should be rasied.

I know PHP <> Java, but Java doesn't raise any errors, and PHP5's OO
model is very close to Java's

Reproduce code:
---------------
    interface FirstInterface
    {
        function execute();
    }
    
    interface SecondInterface
    {
        function execute();
    }
    
    class MyClass implements FirstInterface, SecondInterface
    {
        function execute()
        {
            echo "Hello World";
        }
    }
    
    $obj = new MyClass();
    $obj->execute();

Expected result:
----------------
Hello World

Actual result:
--------------
Can't inherit abstract function SecondInterface::execute()


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=33698&edit=1

Reply via email to