Edit report at http://bugs.php.net/bug.php?id=51176&edit=1
ID: 51176 Comment by: david71rj at gmail dot com Reported by: majkl578 at gmail dot com Summary: Static calling in non-static method behaves like $this-> Status: Bogus Type: Bug Package: Scripting Engine problem Operating System: Irrelevant PHP Version: 5.3.2RC3 Assigned To: felipe Block user comment: N Private report: N New Comment: Sorry by realive this topic, but I really think that it is a bug. If I want call "bar" with context, the correct mean is $this->bar(). Else, the "static" sounds for me like "call without context". I'm wrong? Please, read this topic to understand what I'm saying: http://stackoverflow.com/questions/6181603/php-is-handling-incorrectly-my-static- call Previous Comments: ------------------------------------------------------------------------ [2010-11-03 12:03:17] majkl578 at gmail dot com You cannot call foo::start(), because the method is non-static and therefore it does not make sense. Also, self, static and class name are used to call methods statically, not in a object context. For calling method bar in object context, I think '$this->' should be used instead. Obviously parent should not behave this way and respect context, but I think it should be the only exception (as shown in #52713). ------------------------------------------------------------------------ [2010-11-03 02:45:23] fel...@php.net Hello, I've reverted the wrong changes introduced by trying to fix the issue reported, but actually there is no bug at all. self::bar(), static::bar() and foo::bar() are being called in an object context, hence the __call() is called. I.e. $foo->start(); // invoke the __call method foo::start(); // invoke the __callStatic method Thanks. ------------------------------------------------------------------------ [2010-11-03 02:35:28] fel...@php.net Automatic comment from SVN on behalf of felipe Revision: http://svn.php.net/viewvc/?view=revision&revision=305043 Log: - Reverted fix for bug #51176 ------------------------------------------------------------------------ [2010-03-04 14:27:55] fel...@php.net Hello! This isn't my decision, but the release manager. Thanks. ------------------------------------------------------------------------ [2010-03-04 12:33:59] majkl578 at gmail dot com Can you explain me, please, why this is not fixed in 5.3.2 stable? "Thank you for the report, and for helping us make PHP better." You are intentionally making PHP worse! ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/bug.php?id=51176 -- Edit this bug report at http://bugs.php.net/bug.php?id=51176&edit=1