Нужно ли проверять параметры функции или нет?

Когда я пишу функцию, рекомендуется проверять все параметры функции следующим образом:

<?php
/**
 * foo - Test function
 *
 * @param int $paramA
 * @param str $paramB
 * @param array $paramC
 *
 * @return something
 */
function foo($paramA, $paramB, $paramC) {
    // verify all parameters
    if(!is_int($paramA)) {
        return 0; // or error msg
    }
    if(!is_string($paramB)) {
        return 1; // or error msg
    }
    if(!is_array($paramC)) {
        return 2; // or error msg
    }

    // some code in function scope that uses parameters 
    // and saves the results in $result
    return $result;
}

или мне следует полагаться на пользователя, который будет использовать функцию и предположить, что он знает, что он собой представляет делать и забыть о проверке параметров?

Лично я предпочитаю проверять все параметры функции и возвращать коды ошибок для согласованности кода и облегчения моей жизни послесловия.

Заранее благодарю.

5
задан Starlays 11 October 2011 в 20:53
поделиться