Mejorar el diseño de tu software usando Excepciones, así es más fácil controlar este tipo de casos sin tener que hackear la configuración ni usar reflexión.
Código PHP:
Ver originalfunction fun($foo, $bar = null) {
if (!$bar) {
throw new Exception('Missing $bar argument!');
}
}
try {
$x = fun($y);
} catch (Exception $e) {
}