On Mon, Oct 25, 2010 at 12:56:28AM +0200, Etienne Kneuss wrote:

> Exactly, if Bar::getFoo is not called statically, parent::getFoo() will
> not be a static call, it should not get through __callStatic.

That logic sounds good.  Unfortunately, things aren't behaving that way:

<?php

// Rework of code from http://bugs.php.net/bug.php?id=51176
class p {
        public function __call($n, $a) {
                echo "call\n";
        }

        public static function __callStatic($n, $a) {
                echo "callStatic\n";
        }
}

class c extends p {
        public function existing() {
                parent::non_existing();
        }
}

$c = new c;
echo 'static = ';
c::s();
echo 'object = ';
$c->o();
echo 'parent = ';
$c->existing();

echo phpversion() . "\n";


Thanks,

--Dan

-- 
 T H E   A N A L Y S I S   A N D   S O L U T I O N S   C O M P A N Y
            data intensive web and database programming
                http://www.AnalysisAndSolutions.com/
 4015 7th Ave #4, Brooklyn NY 11232  v: 718-854-0335 f: 718-854-0409

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to