domingo, 23 de maio de 2010

PHP - Funções

Uma função é um bloco de código que se declara, para que possa ser utilizado sempre que necessário. Este processo, permite-nos simplificar a construção de um website, porque não temos de estar sempre a repetir as mesmas instruções, podendo declarar funções para tal. Uma função pode trabalhar com diversos parâmetros que lhe são enviados, ou até, sem
qualquer parâmetro. Normalmente devolve um valor, resultado do processamento do código da função. Exemplo de uma função:
<?
function escreve($str)
{
echo "A string enviada para a função diz: $str .<br>";
}
escreve ("String de Teste");
?>

Neste exemplo, declarei uma função de nome "escreve" que aceita um parâmetro. do tipo String. Quando a função for chamada, vai enviar um output para o ecrã que diz "A string enviada para a função diz: " seguido do valor
enviado para a função Neste caso, chamamos a função escreve() e como parâmetro. a string "String de Teste". Quando executamos este script, o resultadoé o seguinte:
A string enviada para a função diz: String de Teste .
Neste exemplo, a função não nos devolve nada. Serve apenas para poder-mos usufruir da reutilização do código. Exemplo:
Imaginemos que queremos escrever linhas a vermelho, azul e a verde.
Um método que poderíamos usar, era escrever:
<html>
<body>
<font color=#FF0000>O texto que eu quero a vermelho</font><br>
<font color=#00FF00>O texto que eu quero a verde</font><br>
<font color=#0000FF>O texto que eu quero a azul</font><br><br>
<font color=#FF0000>O texto que eu quero a vermelho</font><br>
<font color=#00FF00>O texto que eu quero a verde</font><br>
<font color=#0000FF>O texto que eu quero a azul</font><br><br>

<font color=#FF0000>O texto que eu quero a vermelho</font><br>
<font color=#00FF00>O texto que eu quero a verde</font><br>
<font color=#0000FF>O texto que eu quero a azul</font><br><br>
</body>
</html>

Até aqui tudo bem, a coisa funciona correctamente, e temos um belo trabalho sempre que queremos escrever uma linha da cor pretendida, ao longo do site. Agora imaginemos que, cada vez que eu quero escrever a cor vermelha, o texto
apareça a BOLD ("<b>"), o texto a verde em Itálico ("<i>"), e o azul a sublinhado ("<u>"). No mínimo, era fugir para outro planeta e desistir do projecto! Mais uma vez, o PHP vem ao nosso socorro, e podemos implementar
Funções! O nosso exemplo então seria muito simples.
Inicialmente implementamos as funções das cores:
<?
//função que escreve a vermelho
function escreve_vermelho ($str)
{
echo "<font color=#FF0000>$str</font><br>";
}
//função que escreve a verde
function escreve_verde ($str)
{
echo "<font color=#00FF00>$str</font><br>";
}
//função que escreve a azul
function escreve_azul ($str)
{
echo "<font color=#0000FF>$str</font><br><br>";
}

//chamada das funções com o respectivo texto
escreve_vermelho("O texto que eu quero a vermelho");
escreve_verde("O texto que eu quero a verde");
escreve_azul("O texto que eu quero a azul");
//e podemos repetir a chamada às funções as vezes que quisermos
escreve_vermelho("O texto que eu quero a vermelho");
escreve_verde("O texto que eu quero a verde");
escreve_azul("O texto que eu quero a azul");
escreve_vermelho("O texto que eu quero a vermelho");
escreve_verde("O texto que eu quero a verde");
escreve_azul("O texto que eu quero a azul");
?>
E já temos as funções, que podemos utilizar no nosso site, para quando precisarmos escrever texto a vermelho, verde ou azul. Agora, se por ventura, tivermos de mudar o texto a vermelho, para aparecer a bold; o verde para
aparecer em itálico, e o azul em sublinhado, basta apenas mudarmos as nossas funções. Assim, as funções modificadas ficariam assim:
<?
//função que escreve a vermelho e a bold
function escreve_vermelho ($str)
{
echo "<font color=#FF0000><b>$str</b></font><br>";
}
//função que escreve a verde
function escreve_verde ($str)
{
echo "<font color=#00FF00><i>$str</i></font><br>";
}
//função que escreve a azul
function escreve_azul ($str)
{
echo "<font color=#0000FF><u>$str</u></font><br><br>";
}
?>
Executamos o script, e onde anteriormente aparecia as frases com o texto normal, vai aparecer agora com as formatações de bold, itálico e sublinhado, atribuídas nas funções.
-*-
Estas funções que utilizamos, utilizam apenas parte das capacidades de uma função. Vamos ver agora, como podemos retornar valores de uma função.
Imaginemos que queremos utilizar uma função que nos calcule o quadrado de um numero:
<?
function quadrado($num)
{
$total=$num*$num;
return ($total);
}
$num=2;
$quad=quadrado($num);
echo "O quadrado de $num é $quad !";
?>
Declaramos a função quadrado, que aceita um numero como parâmetro. Calcula o resultado do seu quadrado (numero a multiplicar por ele próprio) e guardamos o resultado na variável $total. Retornamos a variável total como resultado
da função. Quando utilizamos a seguinte instrução:
$quad=quadrado($num)
Estamos a dizer que vamos atribuir à variável $quad o valor retornado pela função quadrado(), tendo esta como parâmetro. a variável $num. O resultado deste script é o seguinte:
O quadrado de 2 é 4 !
Podemos também ter funções que chamam outras funções Vamos fazer agora a função Cubo!

<?
function quadrado($num)
{
$total=$num*$num;
return ($total);
}
function cubo($num)
{
$total=quadrado($num)*$num;
return ($total);
}
$num=2;
$quad=quadrado($num);
$cubo=cubo($num);
echo "O quadrado de $num é $quad ! <br>";
echo "O cubo de $num é $cubo ! <br>";
?>
O resultado, como não poderia deixar de ser é:
O quadrado de 2 é 4 !
O Cubo de 2 é 8 !

Exercício 7.1:
Recorrendo às funções, implementa as 4 operações básicas: soma, subtracção, multiplicação e divisao. Cada uma destas funções deverá aceitar 2 parâmetros: $a e $b, e devolver o resultado de cada operação. Dado um valor para estas variáveis, pretendo obter o seguinte resultado:
1- a+b
2- a-b
3- a*b
4- a/b
5- a+(b*a)
6- b/(a-b)
7- a*((b/a)-b)+b
Exercício 7.2:
A proveitando o exemplo anterior, construir uma função que sirva de calculadora.
Esta função aceita 3 parâmetros: $a, $b e $operação. Dados as 3 variáveis, para a função, valida a $operação. através de um Switch, e mediante os diversos casos, a função devera calcular a soma, subtracção, divisão, e
multiplicação.
Esquema:
$a=2;
$b=3;
$operação.="*";
A função deverá calcular o valor de $a*$b.

Resumo:
Podemos construir funções simplesmente para reutilizarmos determinado código ao longo do site. Este método permite-nos que em certa altura, possamos alterar algumas propriedades do código, e esta modificação tenha influencia
em todo o site. As funções permitem também aceitar parâmetros e devolver o resultado do processamento do código da função. Podemos ainda encadear funções para obter o resultado pretendido, e assim simplificar o código
escrito.

Por: Vasco Pinheiro

Marcadores: ,

0 Comentários:

Postar um comentário

Se você gostou deste artigo deixe um comentário!

Duvidas ou sugestões comentem aqui! =D
*Não insultar autor ou leitores da postagens
*Não pedir parceria por comentários
*Não publicar spam ou similar.

Assinar Postar comentários [Atom]

Links para esta postagem:

Criar um link

<< Página inicial