Re: Unexpected behavior for ::
| From: | Bogdan Bezuz | Date: | Mon, 12 Dec 2011 14:39:23 +0000 |
| Subject: | Re: Unexpected behavior for :: | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-56890@lists.php.net to get a copy of this message | ||
Hello,
Thanks for the info, as pointed out by Sean Coates this is sort of documented, I've submited a documentation (problem/)bug report.
https://bugs.php.net/bug.php?id=60499
E_STRICT was disabled since a large part of the application was moved to php 5 only last year and, even if i was aware that it is possible to call non-static methods in a static way, i didn't expect this to work.
On 12/12/2011 16:12, Etienne Kneuss wrote:
Hi, On Mon, Dec 12, 2011 at 14:35, Bogdan Bezuz<bogdan.bezuz@emag.ro> wrote:-- *Bezuz Bogdan* *Programare Site* +40 721 269 934 bogdan.bezuz@emag.ro <mailto:bogdan.bezuz@emag.ro> logo_emag Dante International SA Tel/Fax: +40 21 200 52 00/25 Swan Office Park, Windsor Building Şos. Bucureşti Nord nr. 15-23 BucureştiHello, I'm not sure if this is the desired behavior and i don't want to submit a bogus bug report. class A {Not really, it's a BC compatibility that we had to drag since PHP4. If you enable E_STRICT, it should output a warning saying something like "importing $this from invalid context". It is/was scheduled for cleanup in the next major version. Best,public function f1() { var_dump($this->_b); }} class B {public $_b = 'stuff';public function f2() { A::f1(); }} $b = new B(); $b->f2(); At first i would expect an error since A was not instantiated, at most i would expect to return NULL but not 'stuff'. Is this a bug ?-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php