Проверка Php Если объявлен статический класс

Как я могу проверить, был ли объявлен статический класс? ex Учитывая класс

class bob { function yippie() { echo "skippie"; } } 

позже в коде, как я могу проверить:

 if(is_a_valid_static_object(bob)) { bob::yippie(); } 

поэтому я не получаю: Fatal error: Class 'bob' не найден в файле.php в строке 3

Вы также можете проверить наличие определенного метода, даже без создания экземпляра класса

 echo method_exists( bob, 'yippie' ) ? 'yes' : 'no'; 

Если вы хотите сделать еще один шаг и убедиться, что «yippie» на самом деле статичен, используйте Reflection API (только PHP5)

 try { $method = new ReflectionMethod( 'bob::yippie' ); if ( $method->isStatic() ) { // verified that bob::yippie is defined AND static, proceed } } catch ( ReflectionException $e ) { // method does not exist echo $e->getMessage(); } 

или вы могли бы объединить два подхода

 if ( method_exists( bob, 'yippie' ) ) { $method = new ReflectionMethod( 'bob::yippie' ); if ( $method->isStatic() ) { // verified that bob::yippie is defined AND static, proceed } } 

bool class_exists( string $class_name [, bool $autoload ] )

Эта функция проверяет, был ли задан данный класс.