One of the disadvantages of PHP, and one of the things I don't like about the php, is the fatal error, beacsue there isn't any way to avoid it. Well PHP is actually thought to be used in web environment, therefor it is not so imortant, if your script causes a fatal error, then only the execution of the script for a single request would be terminated.
In PHP commandline apps, it is really fatal, if your app causes a fatal error, beacuse you have to restart your app. Well you can avoid this, if you write your app very carefully. You should always use if(function_exists("a_func")) and if(methode_exists("a_methode")). Now you can be pretty sure, that the script won't cause any fatal error.
If you dynamically load third party modules in your app, you have a real problem, because the included module could cause a fatal error, yor app would be terminated. There is on way to avoid it. Use call_user_func. You can replace in third party modules every function call and metode call with call_user_func. For exmpale.
<?php
function add($a,$b){ echo $a+$b; } // call the function with a small mistake ad(2,3); // causes a fatal error //replace it with call_user_func("ad",2,3); // causes a warning