passar um argumento que pode não estar definido para uma função, sem emitir um aviso

PHP tem oisset() , que pega uma variável e informa se foi definida. Não lança um aviso quando é passada uma chave de matriz que não existe. Gostaria de duplicar essa funcionalidade em uma nova função que faz algo assim:

function my_function($arg1, $arg2) {
    if(isset($arg1)) {
        //...do something
    } else {
        //...do something else
    }
}

ou eventualmente algo parecido com isto:

function my_function() {
    $arglist = func_get_args();
    foreach($arglist as $arg) {
        if(isset($arg)) {
            // ... do something
        }
    }
}

Obviamente, essas funções não funcionarão. Eu poderia suprimir todos os erros com @ e, em seguida, apenas testar como nulo, mas prefiro deixar o relatório de erros intacto.

Alguma ideia?

questionAnswers(3)

yourAnswerToTheQuestion