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();
	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().

Did you enjoy this post?

Cool if I slip into your inbox with more?
Full posts, 1-2 times per week: