PHP — проверить существует ли функция

Иногда возникает вопрос: Как проверить, существует ли функция или нет, как встроенная, так и пользовательская. В php для это сделать достаточно просто, для этого есть встроенная функция function_exists, которая принимает 1 параметр, имя функции. Ниже примеры использования:

Пример 1 проверка встроенной функции:

<?php

if(function_exists('strstr')){
    echo 'Функция strstr есть';
}else{
    echo 'Функции strstr нет';
}

?>

В результате будет вывод: Функция strstr есть

Сделаем еще одну проверку, без объявления функции, также в конструкции if — else. проверим, объявлена ли функция.

Пример 2 проверка не объявленной пользовательской функции:

<?php

if(function_exists('myFunc')){
    echo 'Функция myFunc есть';
}else{
    echo 'Функции myFunc нет';
}

?>

В результате мы получим вывод: Функции myFunc нет, так как она не была объявлена и среди встроенных такой нет.

В следующем примере, объявим эту функцию и также проверим:

Пример 2 проверка объявленной пользовательской функции:

<?php

function myFunc(){}

if(function_exists('myFunc')){
    echo 'Функция myFunc есть';
}else{
    echo 'Функции myFunc нет';
}

?>

Результат выполнения: Функция myFunc есть

Стоит отметить, что результат будет положительный, даже если функция не имеет параметров и ничего не возвращает, мы всего лишь получаем информацию, что она есть. Функция также проверяет и подключаемые файлы при помощи require и unclude

Теги:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *



Рекламный блок, для развития проекта