(PHP 4 >= 4.0.6, PHP 5)
is_callable — Verifica se il contenuto dell'argomento può essere eseguito come funzione
Verifica che il contenuto di una funzione possa essere richiamato come una funzione. Questa verifica può essere eseguita su una semplice variabile contenente il nome di una funzione valida, oppure su un array contenente il nome di un oggetto ed il nome di una funzione
Il parametro var
può essere sia il nome di una funzione sia
un oggetto ed il nome del metodo nell'oggetto, tipo
Se il parametro syntax_only
è impostato a TRUE
la funzione eseguirà un
controllo sulla validità del parametro var
. La funzione scarterà variabili
non stringhe o che non hanno la struttura per essere callback validi. L'unica struttura valida
presuppone di avere solo 2 righe: una stringa con il nome dell'oggetto,
una seconda riga con il nome del metodo.
Il terzo parametro callable_name
contiene il "callable name". Nell'esempio che
segue contiene "someClass:someMethod". Si noti che, nonostante someClass::SomeMethod() implichi
il richiamo ad un metodo statico, questo non è il caso.
<?php
// Come verificare se una variabile può essere eseguita
// come funzione..
//
// Semplice variabile contenente una funzione
//
function unaFunzione()
{
}
$functionVariable = 'unaFunzione';
var_dump(is_callable( $functionVariable, false, $callable_name )); // bool(true)
echo $callable_name, "\n"; // unaFunzione
//
// Array contenente un metodo
//
class unaClasse {
function unMetodo()
{
}
}
$anObject = new unaClasse();
$methodVariable = array($anObject, 'unMetodo' );
var_dump(is_callable($methodVariable, true, $callable_name )); // bool(true)
echo $callable_name, "\n"; // unaClasse:unMetodo
?>