We’ve discussed how to check if a class has a function but what if the class doesn’t exist at all? To check if a class exists you can use, use guessed it, class_exists().

if (class_exists('MyClass'))
{
	$object = new MyClass();
}
else
{
	throw new Exception('The class MyClass does not exist.');
}

As of PHP 5.0.0 the class_exists() function will attempt to use __autoload() to load the class if available. This default behavior can be overwritten by passing a second parameter of false to class_exists().

Also worth nothing, as of PHP 5.0.2 class_exists() will return false if you pass it an interface. When checking if an interface exists, you can use interface_exists().