Перейти к содержимому

is_callable()

Введение

Функция is_callable() — это встроенная функция PHP, которая проверяет, является ли переменная допустимой вызываемой функцией или методом. Вызываемая функция или метод — это функция или метод, которые можно вызвать или выполнить.

Синтаксис

Синтаксис функции is_callable() выглядит следующим образом:

Синтаксис PHP для is_callable()

php
bool is_callable(mixed $var [, bool $syntax_only = false [, string &$callable_name ]])

Функция принимает три параметра. Первый параметр, $var, — это переменная, которая проверяется на возможность быть вызываемой функцией или методом. Второй параметр, $syntax_only, — необязательный параметр, указывающий, следует ли проверять только синтаксис вызываемого объекта или фактически проверять, можно ли его вызвать. Значение по умолчанию — false. Третий параметр, $callable_name, — необязательный параметр, передаваемый по ссылке, который используется для возврата имени вызываемого объекта, если оно является строкой.

Пример использования

Ниже приведен пример использования функции is_callable() в PHP:

Пример PHP is_callable()

php
<?php
function testFunction()
{
  echo "Hello world!";
}
class TestClass
{
  public function testMethod()
  {
    echo "Hello world!";
  }
}
$var1 = "testFunction";
$var2 = [new TestClass(), "testMethod"];
$var3 = "not_a_callable";
echo is_callable($var1) . "\n"; // output: 1 (true)
echo is_callable($var2) . "\n"; // output: 1 (true)
echo is_callable($var3) . "\n"; // output: (false)
?>

В этом примере мы определяем функцию testFunction() и класс TestClass с методом testMethod(). Затем мы определяем три переменные: $var1 — это строка, содержащая имя функции, $var2 — массив, содержащий новый экземпляр класса и имя метода, а $var3 — строка, которая не является допустимым вызываемым объектом. Затем мы используем функцию is_callable() для проверки каждой переменной на возможность быть вызываемой функцией или методом. Результат показывает, что $var1 и $var2 являются допустимыми вызываемыми объектами (true), тогда как $var3 не является допустимым вызываемым объектом (false).

Заключение

Функция is_callable() — это полезный инструмент для проверки того, является ли переменная допустимой вызываемой функцией или методом в PHP. Ее можно использовать для обеспечения возможности вызова переменной перед попыткой ее вызова, а также для обработки вызываемых и невызываемых переменных определенным образом. Используя эту функцию, разработчики могут убедиться, что их код работает с допустимыми вызываемыми объектами, и избежать ошибок, которые могут возникнуть при попытке вызвать невызываемые переменные.

Практика

Какова основная цель функции is_callable() в PHP?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.