(PHP 4, PHP 5, PHP 7, PHP 8)
defined — Checks whether a given named constant exists
$constant_name
): boolChecks whether the given constant exists and is defined.
This function works also with class constants and enum cases.
Note:
If you want to see if a variable exists, use isset() as defined() only applies to constants. If you want to see if a function exists, use function_exists().
constant_name
The constant name.
Returns true
if the named constant given by constant_name
has been defined, false
otherwise.
Example #1 Checking Constants
<?php/* Note the use of quotes, this is important. This example is checking * if the string 'TEST' is the name of a constant named TEST */if (defined('TEST')) { echo TEST;}interface bar { const test = 'foobar!';}class foo { const test = 'foobar!';}var_dump(defined('bar::test')); // bool(true)var_dump(defined('foo::test')); // bool(true)?>
Example #2 Checking Enum Cases (as of PHP 8.1.0)
<?phpenum Suit{ case Hearts; case Diamonds; case Clubs; case Spades;}var_dump(defined('Suit::Hearts')); // bool(true)?>