Funkcia call_user_func

Funkcia call_user_func umožňuje volať ľubovoľnú callable funkciu, pričom jej odovzdá argumenty. Prvým parametrom prijíma názov funkcie alebo anonymnú funkciu, ďalšími parametrami - argumenty pre volanú funkciu.

Syntax

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

Príklad

Zavolajme štandardnú funkciu strtoupper pre reťazec 'hello':

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

Výsledok vykonania kódu:

php'HELLO'

Príklad

Zavolajme užívateľskú funkciu s viacerými argumentami:

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

Výsledok vykonania kódu:

php8

Príklad

Použitie anonymnej funkcie ako callbacku:

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

Výsledok vykonania kódu:

php'Hello, John!'

Pozri tiež