is_callable()関数を使用できます。
変数の内容を関数として呼び出せることを確認します。これにより、単純な変数に有効な関数の名前が含まれていること、または配列に適切にエンコードされたオブジェクトと関数名が含まれていることを確認できます。
名前が示すように使用できるfunction_exists()およびmethod_exists()関数もあります。
$$ を使用する方法は、変数変数として知られています。
可変変数は、変数の値を取り、それを変数の名前として扱います。
を使用する例を以下に示しますis_callable()
。
//
// Simple variable containing a function
//
function someFunction()
{
}
$functionVariable = 'someFunction';
var_dump(is_callable($functionVariable, false, $callable_name)); // bool(true)
echo $callable_name, "\n"; // someFunction
//
// Array containing a method
//
class someClass {
function someMethod()
{
}
}
$anObject = new someClass();
$methodVariable = array($anObject, 'someMethod');
var_dump(is_callable($methodVariable, true, $callable_name)); // bool(true)
echo $callable_name, "\n"; // someClass::someMethod
?>