ID:               30355
 Updated by:       [EMAIL PROTECTED]
 Reported By:      info at rhalff dot com
-Status:           Assigned
+Status:           Wont fix
 Bug Type:         Zend Engine 2 problem
-Operating System: linux
+Operating System: *
 PHP Version:      5.0.2
 Assigned To:      helly
 New Comment:

For BC reasons calling a non static method statically keeps $this. 

This is not my decision - often enough i suggested to fix static member
behavior now that we can declare them in PHP 5. If you ask me there is
no OO in PHP 4 and hence we should never have taken care of BC with 4.


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

[2004-10-08 08:55:39] [EMAIL PROTECTED]

Marcus, can you explain why there is no bug here?

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

[2004-10-07 22:51:52] info at rhalff dot com

Description:
------------
I think the behaviour below is allready known and it can be fixed
declaring the method 'static', however I still think this is a bug. The
script should fail instead of continuing incorrect behaviour.

Related to Bug #9005, #12622, #20089, #25220, #29206

Because $this behaviour was allready there in 2001, I thought $this
would be a good reminder $this feature is still present in 5.0.2


Reproduce code:
---------------
<?php

class A {

    public function test()
    {
        $this->setValue('huh?');
    }
    
    public function test2()
    {   
        $this->nonExistent();
    }

}   

class B {
    
    public function test()
    {   
        A::test();
    }
    public function setValue($v)
    {   
        echo "$v";
    }
    
    public function test2()
    {   
        A::test2();
    }



}

$B = new B;
$B->test();
$B->test2();


?>

Expected result:
----------------
script should fail, cannot call a non-static method statically.




Actual result:
--------------
huh?
Fatal error: Call to undefined method B::nonExistent() in
/var/www/hosts/gedicht.nu/docs/static/test.php on line 12


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


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

Reply via email to