tags:

views:

67

answers:

2

Does anybody know offhand the way to tell whether I'm being called statically (Classname::function) or inside an object ($classInstance->function) inside a PHP method?

+6  A: 

Admittedly not offhand...but Sean Coates has a cool and fairly simple approach to finding this out:

$isStatic = !(isset($this) && get_class($this) == __CLASS__);
Ben
That did it, cheers!
Pekka
+2  A: 

Check if $this is set and equal to the class. It will be equal for an instance call and non-equal (or null) for a static call.

Amber