call_user_func

(PHP 3>= 3.0.3, PHP 4 , PHP 5)

call_user_func --  Appelle une fonction utilisateur

Description

mixed call_user_func ( callback function [, mixed parameter [, mixed ...]] )

call_user_func() appelle la fonction utilisateur function_name, et lui passe les paramètres parameter.

Exemple 1. Exemple avec call_user_func()

<?php
function barbier ($type)
{
  echo
"Vous vouliez une coupe $type, pas de problème";
}
  
call_user_func('barbier', 'à la one again');
call_user_func('barbier', 'militaire');
call_user_func('barbier', 'au bol');
?>

Les méthodes d'objets peuvent être appelées statiquement en passant array($objectname, $methodname) au paramètre function.

Exemple 2. Exemple avec call_user_func() et une méthode de classe

<?php
class maclasse {
  function
dit_bonjour()
  {
    echo
"Bonjour!\n";
  }
}

$classname = "maclasse";

call_user_func(array($classname,'dit_bonjour'));
?>

Note : Notez que les paramètres pour call_user_func() ne sont pas passés par référence.

<?php
function increment(&$var)
{
    
$var++;
}

$a = 0;
call_user_func('increment', $a);
echo
$a; // 0

call_user_func_array('increment', array(&$a)); // Vous pouvez utiliser ceci à la place
echo $a; // 1
?>

Voir aussi is_callable(), call_user_func_array() et information à propos de callback type.