[Tutorial] Funções PHP
2 participantes
:: Códigos • Programação :: PHP :: PHP • Tutoriais
Página 1 de 1
[Tutorial] Funções PHP
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Agora iremos aprender um pouco sobre Função PHP
Qualquer código PHP válido pode estar contido no interior de uma função. O tipo devolvido não deve ser declarado, sendo necessário que o programador esteja atento para que a função devolva o tipo desejado. É recomendável que esteja tudo bem documentado para facilitar a leitura e compreensão do código.
Para efeito de documentação, utiliza-se o seguinte formato de declaração
de função:
Este formato só deve ser utilizado na documentação do script,
pois o PHP não aceita a declaração de tipos. Isso significa que em muitos casos o programador deve estar atento aos tipos dos valores passados como parâmetros, pois se não for passado o tipo esperado
não é emitido nenhum alerta pelo interpretador PHP, já que este
não testa os tipos.
os comandos e não devolver nenhum valor.Não é possível que uma função devolva mais do
que um valor, mas é permitido fazer com que uma função devolva
um valor composto, como listas ou arrays.
declarados logo após o nome da função, entre parênteses, e tornam-se variáveis
locais da função. A declaração do tipo de cada argumento também
é utilizada apenas para efeito de
comentário.
Exemplo:
se o conteúdo da variável for alterado, essa alteração não afeta a variável original.
Exemplo:
No exemplo acima, como a passagem de parâmetros é por valor, a função mais5 é inútil, já
que após a execução sair da função o valor anterior da variável é recuperado.
Se a passagem de valor fosse feita por referência, a variável $a teria 8 como valor.
O que ocorre normalmente é que ao ser chamada uma função, o interpretador salva os conteúdos
das variáveis. Se uma dessas variáveis for passada como parâmetro, o seu
conteúdo fica preservado, pois a função irá trabalhar na verdade com uma cópia da variável.
Porém, se a passagem de parâmetros for feita por referência, toda alteração que a função realizar no valor passado como parâmetro afetará a variável que o contém.
Há duas maneiras de fazer com que uma função tenha parâmetros passados por referência:indicando
isso na declaração da função, o que faz com que a passagem de parâmetros seja sempre assim;e também na própria chamada da função. Nos dois casos utiliza-se o modificador "&".
Vejamos um exemplo que ilustra os dois casos:
Neste caso, só $num1 terá seu valor alterado, pois a passagem por referência está definida na
declaração da função.
Aqui as duas variáveis terão seus valores alterados.
no caso de nada ser passado no lugar do argumento. Quando algum parâmetro é declarado desta maneira, a passagem do mesmo na chamada da função
torna-se opcional.
Quando a função tem mais do que um parâmetro, o que tem valor
default deve ser declarado em último:
A função não vai funcionar da maneira esperada, ocorrendo
um erro no interpretador. A declaração
correcta é:
Aqui a funcao funciona da maneira esperada, ou seja, imprime o texto: "a figura é um círculo de cor azul"
declaração.
Exemplo:
O codigo acima não produzirá saída alguma, pois a variável $vivas é de escopo global, e não pode ser referida num escopo local, mesmo que não haja outra com nome igual que tape a sua visibilidade. Para que o script funcione da forma desejada, a variável global a ser utilizada deve ser declarada.
Exemplo:
Uma declaração "global" pode conter várias variáveis, separadas por vírgulas. Uma outra
maneira de aceder a variáveis globais dentro de uma função é utilizar um array pré-definido pelo PHP cujo nome é $GLOBALS. O índice para a variável referida é o proprio nome da variável, sem o
caracter $. O exemplo acima e o abaixo produzem
o mesmo resultado:
Exemplo:
Agora iremos aprender um pouco sobre Função PHP
- Definindo funções
unction nome_da_função([arg1, arg2, arg3]) {
Comandos;
... ;
[return ];
}
Qualquer código PHP válido pode estar contido no interior de uma função. O tipo devolvido não deve ser declarado, sendo necessário que o programador esteja atento para que a função devolva o tipo desejado. É recomendável que esteja tudo bem documentado para facilitar a leitura e compreensão do código.
Para efeito de documentação, utiliza-se o seguinte formato de declaração
de função:
tipo function nome_da_funcao(tipo
arg1, tipo arg2, ...);
Este formato só deve ser utilizado na documentação do script,
pois o PHP não aceita a declaração de tipos. Isso significa que em muitos casos o programador deve estar atento aos tipos dos valores passados como parâmetros, pois se não for passado o tipo esperado
não é emitido nenhum alerta pelo interpretador PHP, já que este
não testa os tipos.
- Valor de retorno
os comandos e não devolver nenhum valor.Não é possível que uma função devolva mais do
que um valor, mas é permitido fazer com que uma função devolva
um valor composto, como listas ou arrays.
- Argumentos
declarados logo após o nome da função, entre parênteses, e tornam-se variáveis
locais da função. A declaração do tipo de cada argumento também
é utilizada apenas para efeito de
comentário.
Exemplo:
function imprime($texto){
echo $texto;
}
imprime("teste
de funções");
- Passagem de parâmetros por referência
se o conteúdo da variável for alterado, essa alteração não afeta a variável original.
Exemplo:
function mais5($numero)
{
$numero += 5;
}
$a = 3;
mais5($a); //$a continua a valer 3
No exemplo acima, como a passagem de parâmetros é por valor, a função mais5 é inútil, já
que após a execução sair da função o valor anterior da variável é recuperado.
Se a passagem de valor fosse feita por referência, a variável $a teria 8 como valor.
O que ocorre normalmente é que ao ser chamada uma função, o interpretador salva os conteúdos
das variáveis. Se uma dessas variáveis for passada como parâmetro, o seu
conteúdo fica preservado, pois a função irá trabalhar na verdade com uma cópia da variável.
Porém, se a passagem de parâmetros for feita por referência, toda alteração que a função realizar no valor passado como parâmetro afetará a variável que o contém.
Há duas maneiras de fazer com que uma função tenha parâmetros passados por referência:indicando
isso na declaração da função, o que faz com que a passagem de parâmetros seja sempre assim;e também na própria chamada da função. Nos dois casos utiliza-se o modificador "&".
Vejamos um exemplo que ilustra os dois casos:
function mais5(&$num1,
$num2) {
$num1 += 5;
$num2 += 5;
}
$a = $b = 1;
mais5($a, $b);
Neste caso, só $num1 terá seu valor alterado, pois a passagem por referência está definida na
declaração da função.
mais5($a, &$b);
Aqui as duas variáveis terão seus valores alterados.
- Argumentos com valores pré-definidos (default)
no caso de nada ser passado no lugar do argumento. Quando algum parâmetro é declarado desta maneira, a passagem do mesmo na chamada da função
torna-se opcional.
function teste($vivas
= "testando") {
echo $vivas;
}
teste(); // imprime
"testando"
teste("outro teste"); // imprime
"outro teste"
Quando a função tem mais do que um parâmetro, o que tem valor
default deve ser declarado em último:
function teste($figura
= circulo, $cor) {
echo "a figura é um ",
$figura, " de cor " $cor;
}
teste(azul);
A função não vai funcionar da maneira esperada, ocorrendo
um erro no interpretador. A declaração
correcta é:
function teste2($cor,
$figura = circulo) {
echo "a figura é um ",
$figura, " de cor " $cor;
}
teste2(azul);
Aqui a funcao funciona da maneira esperada, ou seja, imprime o texto: "a figura é um círculo de cor azul"
- Contexto
- Escopo
declaração.
Exemplo:
$vivas = "Testando";
function Teste() {
echo $vivas;
}
Teste();
O codigo acima não produzirá saída alguma, pois a variável $vivas é de escopo global, e não pode ser referida num escopo local, mesmo que não haja outra com nome igual que tape a sua visibilidade. Para que o script funcione da forma desejada, a variável global a ser utilizada deve ser declarada.
Exemplo:
$vivas = "Testando";
function Teste() {
global $vivas;
echo $vivas;
}
Teste();
Uma declaração "global" pode conter várias variáveis, separadas por vírgulas. Uma outra
maneira de aceder a variáveis globais dentro de uma função é utilizar um array pré-definido pelo PHP cujo nome é $GLOBALS. O índice para a variável referida é o proprio nome da variável, sem o
caracter $. O exemplo acima e o abaixo produzem
o mesmo resultado:
Exemplo:
$vivas = "Testando";
function Teste() {
echo $GLOBALS["vivas"]; // imprime
$vivas
echo $vivas; // não imprime nada
}
Teste();
Re: [Tutorial] Funções PHP
Tópico Fechado.
Caso Necessite o Reabrimento Do Tópico Me Envie Uma MP Declarando os Motivos.
Caso Necessite o Reabrimento Do Tópico Me Envie Uma MP Declarando os Motivos.
Tópicos semelhantes
» Tutorial - PHP funções
» [Tutorial] Criação de Funções no PHP
» Tutorial - Funções HTML
» [ Tutorial ] "Apelidos" e Funcões dos Heróis
» [L.G.H] CrazyAnonymous [funções simples]
» [Tutorial] Criação de Funções no PHP
» Tutorial - Funções HTML
» [ Tutorial ] "Apelidos" e Funcões dos Heróis
» [L.G.H] CrazyAnonymous [funções simples]
:: Códigos • Programação :: PHP :: PHP • Tutoriais
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos