Que maneira é indicada para limitar tamanho de parâmentros em função?
olá, galera!
É o seguinte:
No php, quando geralmente utilizamos uma função nativa passando mais argumentos que o esperado, ele retorna um erro.
Exemplo:
echo strlen('string');//6 -- Aqui está tudo normal
Se eu fizer isso:
echo strlen('string', 'outro parametro não esperado');
é gerado esse erro:
Warning: strlen() expects exactly 1 parameter, 2 given in C:\xampp\htdocs\teste\index.php on line 4
Eu pensei em fazer a mesma coisa, mas gostaria de saber se fica bacana (ou se é recomendável)?
Fiz assim:
function minha_funcao($string)
{
if(func_num_args() > 1)
{
$message_error = sprintf('The User Function %s() expects exactly 1 parameter, %d given', __FUNCTION__, func_num_args());
return trigger_error($message_error, E_USER_WARNING);
}
return $string;
}
// teste //
echo minha_funcao('uma string');
echo minha_funcao('uma string', 1);
Vai gerar:
Warning: The User Function minha_funcao() expects exactly 1 parameter, 2 given in C:\xampp\htdocs\teste\index.php on line 13
Nesse caso, trigger_error() é para funções e throw new Exception é para método de classes?
Discussão (4)
Carregando comentários...