Is it possible in PHP to prevent "Fatal error: Call to undefined function"?
error-handling, fatal-error, php, undefined
Solution
No. Fatal errors are fatal. Even if you were to write your own error handler or use the `@` error suppression operator, `E_FATAL` errors will still cause the script to halt execution.
The only way to handle this is to use `function_exists()` (and possibly `is_callable()` for good measure) as in your example above.
It's always a better idea to code defensively around a potential (probable?) error than it is to just let the error happen and deal with it later anyway.
EDIT - php7 has changed this behavior, and undefined functions/methods are catchable exceptions.
Problem
In PHP, is there any way that I can ignore functions that are undefined instead of throwing a fatal error that is visible in the browser?—i.e., Fatal error: Call to undefined function I know that there is the practice of wrapping all custom functions in a conditional as below, but is there a programmatic way to get this effect? ``` if (function_exists('my_function')) { // use my_function() here; } ```