defined

Checks whether a constant with the given name exists

Description

bool defined(string $constant_name)

Checks whether a constant with the given constant_name 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.

Parameters

constant_name

The constant name.

Return Values

Returns true if the named constant given by constant_name has been defined, false otherwise.

Examples

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)

<?php

enum Suit
{
    case 
Hearts;
    case 
Diamonds;
    case 
Clubs;
    case 
Spades;
}

var_dump(defined('Suit::Hearts')); // bool(true)

?>

See Also

  • define
  • constant
  • get_defined_constants
  • function_exists
  • The section on Constants