14

Click here to load reader

Aula 4 php

Embed Size (px)

Citation preview

Page 1: Aula 4 php

Aula 4 PHP

Funções

Page 2: Aula 4 php

Definição de Função

• São trechos de códigos que podem realizar qualquer tipo de tarefa, como por exemplo, somar dois números, testar se o valor de uma variável é válido, etc.

• São muito úteis para deixar o código mais organizado e modular.

• Podem ser chamadas a qualquer momento da execução de um programa.

Page 3: Aula 4 php

Sintaxe

function nome_função(arg1 , arg2, arg3 ... argn)

{comandos

[ return <expressao> ]

}

Page 4: Aula 4 php

Exemplo

<?phpfunction soma_valores ($valor1, $valor2, $valor3){

$soma = $valor1 + $valor2 + $valor3;echo “ A soma dos valores $valor1, $valor2 e $valor3”;echo “é $soma”;

}$n1 = 10;$n2 = 20;$n3 = 50;soma_valores($n1, $n2, $n3);?>

Page 5: Aula 4 php

• Note que as variáveis que são passadas como parâmetros não precisam ter o mesmo nome dos argumentos definidos na função.

• A função apresentada não utiliza o comando return.

Page 6: Aula 4 php

Utilizando o comando return

• O comando return devolve para o ponto de chamada da função o valor da variável ou expressão que aparece imediatamente após esse comando. Desse modo, podemos atribuir a uma variavel o valor retornado de uma função.

Page 7: Aula 4 php

<?phpFunction maiusculo($string){

$string = strtoupper($string);$string = str_replace(“á”, “Á”, $string);$string = str_replace(“é”, “É”, $string);$string = str_replace(“í”, “Í”, $string);

$string = str_replace(“ó”,”Ó”, $string);$string = str_replace(“ú”, “Ú”, $string);$string = str_replace(“â”, “”, $string);$string = str_replace(“ê”, “Ê”, $string);$string = str_replace(“ô”,”Ô”, $string);$string = str_replace(“î”, “Δ, $string);$string = str_replace(“û”, “Û”, $string);$string = str_replace(“ã”, “Ô, $string);$string = str_replace(“õ”,”Õ”, $string);$string = str_replace(“ç”,”Ç”, $string);$string = str_replace(“à”,”À”, $string);return $string;

}$nome = “José Antônio”;$nome_m = maiusculo($nome);echo “O nome em letras maiusculas : $nome_m”;?>

Page 8: Aula 4 php

• strtoupper – Transforma uma string em letras maiusculas. Porém, dependendo da versão, esse comando não transforma caracteres acentuados.

• str_replace – Faz a substituição de determinada parte da string por outro dentro de uma variável.

Ambos podem ser encontrados no manual do php.

Page 9: Aula 4 php

• Uma função pode também, em vez de retornar um único valor, retornar um array contendo vários elementos.

<?phpFunction clubes(){

$clubes[] = “Grêmio”;$clubes[] = “Palmeiras”;$clubes[] = “Vascão”;$clubes[] = “Atlético Mineiro”;$clubes[] = “Bahia”;return $clubes;

}

$nomes = clubes();For ($i=0; $i < sizeof($nomes); $i++){

echo “A variavel nomes vale “.$nomes[$i].”<br>”;}?>

Page 10: Aula 4 php

Passagem de parâmetros: valor e referência

• Quando passamos uma variável como argumento por padrão estamos passando apenas o valor dela. Qualquer alteração feita dentro da função não se reflete sobre a variável no programa principal. Chamamos este processo de passagem de parâmetros por valor.

• Existem funções em que queremos que a variável passada como argumento seja alterada conforme as alterações feitas durante a execução da função. Este processo é chamado de passagem de parâmetros por referência.

Page 11: Aula 4 php

• A passagem de parâmetros por referência requer que seja colocado o símbolo ‘&’ antes do nome da variável.Exemplo:

<?phpfunction dobro($valor){

$valor = 2 * $valor;}function duplica(&$valor){

$valor = 2*$valor;}$valor = 5;dobro($valor);echo $valor. “<br>”;duplica($valor);echo $valor;?>

Page 12: Aula 4 php

Valores padrão

• Se uma função possui determinado parâmetro e no momento da chamada esse parâmetro não é enviado, podemos utilizar valores-padrão.

• Para definir esses valores, basta colocar um operador de atribuição após o parâmetro definido na função.

• Os valores-padrão devem ser sempre os últimos parâmetros definidos na função.

Page 13: Aula 4 php

• Exemplo:

<?php

function teste($time, $titulo = “Campeão Mundial”)

{

echo “o $time é $titulo<br>”;

}

teste(“Flamengo”, “Campeão Carioca”);

teste(“Atlético”, “Campeão Mineiro”);

teste(“Vasco”);

?>

Page 14: Aula 4 php

Funções recursivas

• Chamamos de funções recursivas aquelas funções que chamam a elas mesmas.

Exemplo<?php

function teste($valor){

if($valor!=0){

echo “Foi chamada a função teste passando o valor $valor<br>”;teste($valor-1);

}}teste(7);

?>