call_user_func ֆունկցիան

call_user_func ֆունկցիան թույլ է տալիս կանչել ցանկացած callable-ֆունկցիա՝ փոխանցելով դրան արգումենտներ: Առաջին պարամետրով ընդունում է ֆունկցիայի անունը կամ անանուն ֆունկցիա, հաջորդ պարամետրերով՝ կանչվող ֆունկցիայի արգումենտները:

Սինտաքս

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

Օրինակ

Կանչենք ստանդարտ strtoupper ֆունկցիան 'hello' տողի համար:

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 ֆունկցիան,
    որը ստուգում է ֆունկցիայի գոյությունը