The BadFunctionCallException class

(PHP 5 >= 5.1.0, PHP 7)


Exception thrown if a callback refers to an undefined function or if some arguments are missing.

Class synopsis

BadFunctionCallException extends LogicException {
/* Inherited properties */
protected string $message ;
protected int $code ;
protected string $file ;
protected int $line ;
/* Inherited methods */
final public string Exception::getMessage ( void )
final public Throwable Exception::getPrevious ( void )
final public mixed Exception::getCode ( void )
final public string Exception::getFile ( void )
final public int Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private void Exception::__clone ( void )
add a note add a note

User Contributed Notes 4 notes

tom at tomwardrop dot com
7 years ago
A typical use for this exception, is in conjunction with the is_callable() function.
roland at mxchange dot org
29 days ago
You can also throw BadMethodCallException within a method when certain pre-conditions to safely call that method are not met.

For example when a method <?php $foo->analyzeData(); ?> has been called but no data as previously been loaded (from file "import" for database, wherever from).
evguenia dot chagnon at gmail dot com
3 months ago
For example:

function foo($arg) {
    $func = 'do' . $arg;
    if (!is_callable($func)) {
        throw new BadFunctionCallException('Function ' . $func . ' is not callable');
Dawid Krysiak
6 years ago
Direct known subclasses:

So BadMethodCallException can be used in case the subject function is or should be a part of class / object - it's use defines the case more precisely.
To Top