One of the nicer, and largely unheralded I think, features of PHP 5 is its comprehensive reflection API. Arguably one of the reasons it is largely unheralded is because its documentation is a bit average. One great little tidbit, and the motivation for the blog post, is the ReflectionClass->getMethods($filter=null) method takes an optional parameter 'filter'. In the online documentation there is scant mention of what values this $filter parameter can take. Luckily in the comments Will Mason chimed in with paydirt:

If you are looking for the long $filters for ReflectionClass::getMethods(), here they are. They took me a  long time to find. Found nothing in the docs, nor google. But of course, Reflection itself was the final solution, in the form of ReflectionExtension::export("Reflection").
// The missing long $filter values!!!
ReflectionMethod::IS_STATIC;
ReflectionMethod::IS_PUBLIC;
ReflectionMethod::IS_PROTECTED;
ReflectionMethod::IS_PRIVATE;
ReflectionMethod::IS_ABSTRACT;
ReflectionMethod::IS_FINAL;

// Use them like this
$r = new ReflectionClass("MyClass");
// Print all public methods
foreach ($r->getMethods(ReflectionMethod::IS_PUBLIC) as $m) {
    echo $m->__toString();
}

Another example, this time one of my own, is one that I found myself writing while working with the Zend Framework's Zend_Controller implementation:

/**
 * @param   String $controller_class
 * @return   ArrayObject
 */
private function getActionList($controller_class)
{
    $reflection_class = new ReflectionClass($controller_class);
    $methods = $reflection_class->getMethods(ReflectionProperty::IS_PUBLIC);
    return new ArrayObject($methods);
}

Like many platforms, in PHP it seems documentation is no replacement for digging around the source itself.