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 функциясын,
    ал функциянын бар экендигин текшерет