Mais sobre funções: Retorno de valores

Para ficar a conhecer as formas em que uma função retorna valores este artigo contém várias formas aptas para faze-lo.

Por Miguel Angel Alvarez - Tradução de JML


Publicado em: 18/7/04

Valorize este artigo:
As funções podem retornar valores. Para isso utiliza-se a palavra "return" indicando a seguir o dado ou variável que tem que retornar. A função pode ter múltiplos retun, ainda que só retornará dados por um deles cada vez, isto porque cada vez que se chama a return, termina-se a execução da função retornando o dado indicado.

Exemplo de função IVA

Veremos um novo exemplo para ilustrar o funcionamento de uma função um pouco mais avançada, que utiliza parte dos novos conceitos introduzidos neste artigo.

Trata-se de fazer uma função que calcula o IVA e que recebe dois parâmetros. Um o valor sobre o qual se calcula e o outro a percentagem a aplicar. Se não se indica a percentagem de IVA entende-se que é o 19%.

<html>
<head>
   <title>exemplo IVA</title>
</head>

<body>
<?
function iva($base,$percentagem=16){
   return $base * $porcentagem /100;
}

echo iva(1000) . "<br>";
echo iva(1000,7) . "<br>";
echo iva(10,0) . "<br>";
?>

</body>
</html>


Se os conceitos se perceberam bem, este exemplo não pode resultar difícil. A função recebe um parâmetro chamado $percentagem com 16 como valor pré-definido. Retorna a percentagem dada aplicando a base também passada por parâmetro.

Deste modo, na primeira execução da função, como não se indica a percentagem, mostrar-se-á o 19% de 1000. Na segunda, mostra-se o 7% de 1000 e na terceira o 0% de 10.

Retornar múltiplos valores

Uma função retorna um único valor. Se queremos fazer que se possam retornar vários valores diferentes temos que recorrer a um truque que consiste em retornar um array.

function small_numbers()
{
return array (0, 1, 2);
}
list ($zero, $one, $two) = small_numbers();


list() usa-se para atribuir uma lista de variáveis numa só operação. Depois de essa operação, $zero terá como valor 0, $one terá como valor 1 e $two terá como valor 2.






Usuários :    login / registro
Manuais relacionados
Categorias relacionadas
O autor

Buscar projetos:

Home | Sobre nós | Copyright | Anuncie | Entrar em contato