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