Hello Sebastian,
Sunday, September 14, 2003, 12:15:43 PM, you wrote:
> Sebastian Bergmann wrote:
>> I was not able to strip the application I'm seeing this in down to a
>> small, reproducing snippet, yet.
> Okay, here goes:
> <?php
> class Foo {
> function doFoo() {
> print_r($this);
> }
> }
> class Bar {
> function doBar() {
> Foo::doFoo();
> }
> }
> $bar = new Bar;
> $bar->doBar();
> ?>
> bar Object
> (
> )
> I know that this code's logic is wrong (after the latest refactoring of
> the previously mentioned application I had a leftover (no unit tests,
> yet *sigh*) where a method was previously static).
> But still. Is this the correct behaviour?
No it's wrong. your calling a non static method without an object here. So
we need to find out where the error is.
> And why does
> class Foo {
> static function doFoo() {
> print_r($this);
> }
> }
> give a
> Notice: Undefined variable: this
> instead of the appropriate $this / object context warning?
Absolute correct: static = no $this
--
Best regards,
Marcus mailto:[EMAIL PROTECTED]
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php