Функция call_user_func

Функция call_user_func исталган callable-функцияни унинг учун аргументлар бериб чақириш имконини беради. Биринчи параметр сифатида функция номини ёки аноним функцияни қабул қилади, кейинги параметрлар сифатида эса чақирилаётган функция учун аргументларни беради.

Синтаксис

phpcall_user_func(callable $callback, mixed ...$args): mixed

Мисол

'hello' сатри учун strtoupper стандарт функциясини чақирайлик:

php<?php
  $res = call_user_func('strtoupper', 'hello');
  echo $res;
?>

Коднинг ишлаш натижаси:

php'HELLO'

Мисол

Бир нечта аргументлар билан фойдаланувчи функциясини чақирайлик:

php<?php
  function sum($a, $b) {
    return $a + $b;
  }
  
  $res = call_user_func('sum', 5, 3);
  echo $res;
?>

Коднинг ишлаш натижаси:

php8

Мисол

Аноним функцияни коллбэк сифатида қўллаш:

php<?php
  $res = call_user_func(function($name) {
    return "Hello, $name!";
  }, 'John');
  echo $res;
?>

Коднинг ишлаш натижаси:

php'Hello, John!'

Қаранг

  • call_user_func_array функциясини,
    у параметрлар массиви билан callback-функцияни чақиради
  • function_exists функциясини,
    у функциянинг мавжудлигини текширади