Apostila de PHP para Download
Como invocar uma Função
Já usamos, no decorrer de nossa apostila, algumas funções.A primeira delas foi a print():
<?php print("Apostila PHP Progressivo"); ?>Ela funciona como a echo, simplesmente exibe uma string.
Detectamos que é uma função pelo par de parêntesis: print()
As vezes tem algo dentro do parêntesis, as vezes não tem, você entenderam o motivo.
Outra função que vimos, foi a de exponenciação: pow(base, expoente)
<?php echo "3 elevado a 4: ".pow(3,4); ?>
pow() é uma função, que recebe dois valores (3 e 4) e retornou um valor, o 81, com o resultado da operação.
É simplesmente assim que invocamos funções.
Como criar uma Função em PHP
Embora o PHP tenha uma vasta gama de funções prontas, escritas em algum lugar, e podendo ser invocada milhões de vezes que você quiser, muitas vezes vamos precisar criar nossas próprias funções.A sintaxe para declarar uma função é:
function nome_funcao (parameteros) {
codigo;
codigo;
return valor;
}
Ou seja, digitamos function, damos um nome que quisermos a função, vem os parêntesis, os parâmetros que queremos passar para a função, e o par de chaves.
Dentro do par de chaves, vem o código, o corpo da função, onde a mágica vai ocorrer.
Por fim, o comando return que retorna algum valor.
Os parâmetros e return não são obrigatórios e vamos aprender mais adiante como usar eles.
Vamos criar uma função, chamada olamundo() que simplesmente existe "Olá, mundo":
<html> <head> <title>Apostila PHP Progressivo</title> </head> <body> <?php function olamundo(){ echo "Olá, mundo"; } ?> </body> </html>Quando rodamos a página, nada acontece.
Nem o Olá, mundo aparece. Por que?
Função é um pedaço de código que fica ali, guardado, na dele.
Só faz algo quando invocamos. Vamos chamar nossa função olamundo():
<html> <head> <title>Apostila PHP Progressivo</title> </head> <body> <?php olamundo(); function olamundo(){ echo "Olá, mundo"; } ?> </body> </html>Agora sim, aparece!
Experimente digitar:
olamundo();
olamundo();
olamundo();
Vai aparecer a mensagem 3x. E não tivemos que dar 3 echo.
Cada vez que invocamos, um bloco específico de código é executado, não precisamos ficar repetindo o mesmo código várias vezes.
É só criar funções bem específicas, com tarefas simples e invocar elas.
Vamos agora criar mais uma, a curso()
Que exibe na tela "Curso PHP Progressvo"
<html> <head> <title>Apostila PHP Progressivo</title> </head> <body> <?php olamundo(); curso(); function olamundo(){ echo "Olá, mundo<br />"; } function curso(){ echo "Curso PHP Progressivo<br />"; } ?> </body> </html>O resultado são as duas strings, printadas no documento HTML.
Captou a ideia por trás das funções?
Calma que estas aí são bem simples, vamos fazer umas mais interessantes no próximo tutorial.
Nomes de funções
Antes de criar suas funções, atenção para algumas coisas:- Não deve existir nenhuma outra função com esse nome (nada de criar uma chamada pow(), por exemplo)
- Só pode conter letra, dígito ou sublinhado
- Não comece por dígitos
- Tanto faz ser maiúscula ou minúscula, não são case sensitive, minhafuncao() é a mesma de MINHAFUNCAO()