"'If called without parameter outside object' What on earth does that mean?"
There are two places this could be called:
1. From within a member function of an object. In this case, it may be called with no parameters and will return the parent class of the object owning the member function. (If the parameter is included, then it will return the parent class of the specified class as normal.)
2. From outside an object (i.e., global or function scope). In this case, PHP doesn't know what class you're talking about if you don't include a parameter, so it returns FALSE. (But, of course, it works if you specify the class with the parameter.)