Funksjonen is_callable
Funksjonen is_callable sjekker om den overførte verdien kan kalles som en funksjon.
Den returnerer true hvis verdien er:
- et funksjonsnavn som en streng
- en array med et objekt og et metodnavn
- et objekt med metoden
__invoke - en anonym funksjon
Syntaks
is_callable(
mixed $value,
bool $syntax_only = false,
string &$callable_name = null
): bool
Eksempel
Sjekk av en vanlig funksjon:
<?php
function test() {}
$res = is_callable('test');
var_dump($res);
?>
Resultat av kjøring av koden:
true
Eksempel
Sjekk av en klasse-metode:
<?php
class MyClass {
public function method() {}
}
$obj = new MyClass();
$res = is_callable([$obj, 'method']);
var_dump($res);
?>
Resultat av kjøring av koden:
true
Eksempel
Sjekk av en ikke-eksisterende funksjon:
<?php
$res = is_callable('non_existent_function');
var_dump($res);
?>
Resultat av kjøring av koden:
false
Eksempel
Sjekk av et objekt med __invoke:
<?php
class Invokable {
public function __invoke() {}
}
$obj = new Invokable();
$res = is_callable($obj);
var_dump($res);
?>
Resultat av kjøring av koden:
true
Se også
-
funksjonen
function_exists,
som sjekker om en funksjon eksisterer -
funksjonen
method_exists,
som sjekker om en klasse-metode eksisterer