is_bool
<<<
is_callable is_double
>>>

6.38 Fonctions de gestion des variables
6 Référence des fonctions
 Manuel PHP

Introduction
Pré-requis
Installation
Configuration à l'exécution
Types de ressources
Constantes pré-définies
debug_zval_dump
doubleval
empty
floatval
get_defined_vars
get_resource_type
gettype
import_request_variables
intval
is_array
is_bool
->is_callable
is_double
is_float
is_int
is_integer
is_long
is_null
is_numeric
is_object
is_real
is_resource
is_scalar
is_string
isset
print_r
serialize
settype
strval
unserialize
unset
var_dump
var_export

6.38.18 is_callable() Détermine si l'argument peut être appelé comme fonction

[ Exemples avec is_callable ]   PHP 4 >= 4.0.6, PHP 5

bool  is_callable ( mixed   var , bool   syntax_only , string   callable_name )

is_callable vérifie qu'une variable peut être appelée comme fonction. Cette fonction peut vérifier qu'une variable contient un nom de fonction valide, ou bien qu'elle contient un tableau, avec un objet et un nom de méthode.

Le paramètre var peut être le nom d'une fonction stockée dans une variable de chaîne, ou un objet, et un nom de méthode pour cet objet, sous la forme : array($unObjet, 'NomDeMethode' )

Si l'argument syntax_only vaut TRUE , la fonction ne va vérifier que si var peut être une fonction ou une méthode. Il va simplement rejeter les variables qui ne sont pas des chaînes, ou des tableaux qui n'ont pas la bonne structure pour être utilisé comme fonction de callback. Les tableaux valides sont supposés n'avoir que deux entrées, le premier étant un objet ou une chaîne, et de second une chaîne.

L'argument callable_name reçoit le nom à utiliser. Dans l'exemple ci-dessous, il vaut "uneClasse:uneMethode" . Notez que, bien que uneClasse:uneMethode() puisse être appelé sous forme statique, ce n'est pas le cas.

Exemple avec is_callable

<?php
//  Comment vérifier qu'une variable peut être appelée
//  comme fonction ?

//
//  Variable simple contenant une fonction
//

function uneFonction() {
}

$fonctionVariable = 'uneFonction';

var_dump( is_callable( $fonctionVariable, false, $callable_name ));  // bool(true)

echo $callable_name, "\n";  // uneFonction

//
//  Tableu contenant une méthode
//

class uneClasse {

  function
uneMethode() {
  }

}

$unObjet = new uneClasse();

$methodeVariable = array($unObjet, 'uneMethode' );

var_dump(is_callable($methodeVariable, true, $callable_name ));  //  bool(true)

echo $callable_name, "\n";  //  uneClasse:uneMethode

?>

Voir aussi function_exists et method_exists .

<< is_callable >>
is_bool Fonctions de gestion des variables is_double