SlideShare une entreprise Scribd logo
1  sur  14
Aula 4 PHP

  Funções
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.
Sintaxe
function nome_função(arg1 , arg2, arg3 ...
  argn)
{
  comandos

[ return <expressao> ]

}
Exemplo
<?php
function 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);
?>
• 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.
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.
<?php
Function 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”;
?>
• 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.
• Uma função pode também, em vez de retornar um único valor,
  retornar um array contendo vários elementos.

<?php
Function 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>”;
}
?>
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.
•   A passagem de parâmetros por referência requer que seja colocado o
    símbolo ‘&’ antes do nome da variável.
    Exemplo:

<?php
function dobro($valor)
{
   $valor = 2 * $valor;
}
function duplica(&$valor)
{
   $valor = 2*$valor;
}
$valor = 5;
dobro($valor);
echo $valor. “<br>”;
duplica($valor);
echo $valor;
?>
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.
• 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”);
?>
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);
?>

Contenu connexe

Tendances (20)

Introdução ao PHP - Criação de sites II
Introdução ao PHP - Criação de sites IIIntrodução ao PHP - Criação de sites II
Introdução ao PHP - Criação de sites II
 
PHP ao Extremo
PHP ao ExtremoPHP ao Extremo
PHP ao Extremo
 
Linguagem C - Strings
Linguagem C - StringsLinguagem C - Strings
Linguagem C - Strings
 
Variáveis
VariáveisVariáveis
Variáveis
 
Linguagem C - Ponteiros
Linguagem C - PonteirosLinguagem C - Ponteiros
Linguagem C - Ponteiros
 
PHP 7
PHP 7PHP 7
PHP 7
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros
 
Aula 5 PHP - Criação de sites II
Aula 5 PHP - Criação de sites IIAula 5 PHP - Criação de sites II
Aula 5 PHP - Criação de sites II
 
Estruturas blade-repeticao
Estruturas blade-repeticaoEstruturas blade-repeticao
Estruturas blade-repeticao
 
Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)Tema 2 | Linguagem PHP Básico (II)
Tema 2 | Linguagem PHP Básico (II)
 
Linguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e FunçõesLinguagem C - Vetores, Matrizes e Funções
Linguagem C - Vetores, Matrizes e Funções
 
Revisao php
Revisao phpRevisao php
Revisao php
 
Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1Vetores, Matrizes e Strings em C Parte 1
Vetores, Matrizes e Strings em C Parte 1
 
Vetores, Matrizes e Strings em C Parte 3
Vetores, Matrizes e Strings em C Parte 3Vetores, Matrizes e Strings em C Parte 3
Vetores, Matrizes e Strings em C Parte 3
 
Php 05 Mvc
Php 05 MvcPhp 05 Mvc
Php 05 Mvc
 
Scheme
SchemeScheme
Scheme
 
Fundamentos de C#
Fundamentos de C#Fundamentos de C#
Fundamentos de C#
 
Desenvolvimento Rápido de Programas Linha de Comando
Desenvolvimento Rápido de Programas Linha de ComandoDesenvolvimento Rápido de Programas Linha de Comando
Desenvolvimento Rápido de Programas Linha de Comando
 
Tema 2 | Linguagem PHP Básico (I)
Tema 2 | Linguagem PHP Básico (I)Tema 2 | Linguagem PHP Básico (I)
Tema 2 | Linguagem PHP Básico (I)
 
Php
PhpPhp
Php
 

En vedette

SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoCarlos Santos
 
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCARepensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCACarlos Santos
 
A technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus projectA technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus projectCarlos Santos
 
SAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning EnvironmentSAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning EnvironmentCarlos Santos
 
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO CampusRepensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO CampusCarlos Santos
 
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)Carlos Santos
 

En vedette (8)

PHP - Funções
PHP - FunçõesPHP - Funções
PHP - Funções
 
SAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativoSAPO Campus: Gamification em contexto educativo
SAPO Campus: Gamification em contexto educativo
 
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCARepensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
Repensar a tecnologia em contextos educativos: o SAPO Campus no DeCA
 
A technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus projectA technological approach to Open and Social Learning: 
the SAPO Campus project
A technological approach to Open and Social Learning: 
the SAPO Campus project
 
chmod 777 education
chmod 777 educationchmod 777 education
chmod 777 education
 
SAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning EnvironmentSAPO Campus towards a
 Smart Learning Environment
SAPO Campus towards a
 Smart Learning Environment
 
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO CampusRepensar a tecnologia em contexto educativo: o caso do SAPO Campus
Repensar a tecnologia em contexto educativo: o caso do SAPO Campus
 
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
Sessão de acolhimento do MCMM da Universidade de Aveiro (2016/2017)
 

Similaire à Aula 4 php

Subalgoritmos Profª Letíca Lopes
Subalgoritmos Profª Letíca LopesSubalgoritmos Profª Letíca Lopes
Subalgoritmos Profª Letíca Lopesmarcosnem
 
PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX Sérgio Souza Costa
 
Programação web ii aulas 06 e 07
Programação web ii   aulas 06 e 07Programação web ii   aulas 06 e 07
Programação web ii aulas 06 e 07Yuri Bispo
 
aula intro de Python sobre Funcoes.pdf
aula intro de  Python sobre  Funcoes.pdfaula intro de  Python sobre  Funcoes.pdf
aula intro de Python sobre Funcoes.pdfGabrielEduardo16342
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScriptBruno Catão
 
Evento Front End SP - Organizando o Javascript
 Evento Front End SP - Organizando o Javascript Evento Front End SP - Organizando o Javascript
Evento Front End SP - Organizando o JavascriptMichel Ribeiro
 
Curso java 04 - ap is e bibliotecas
Curso java   04 - ap is e bibliotecasCurso java   04 - ap is e bibliotecas
Curso java 04 - ap is e bibliotecasMaurício Linhares
 
Linguagem de Programação - aula 04
Linguagem de Programação - aula 04Linguagem de Programação - aula 04
Linguagem de Programação - aula 04Willian Carvalho
 
Oficina de Web Design Lecom - PHP e JavaScript
Oficina de Web Design Lecom - PHP e JavaScriptOficina de Web Design Lecom - PHP e JavaScript
Oficina de Web Design Lecom - PHP e JavaScriptRaphael Donaire Albino
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosRegis Magalhães
 

Similaire à Aula 4 php (20)

Funcao PHP
Funcao PHPFuncao PHP
Funcao PHP
 
Subalgoritmos Profª Letíca Lopes
Subalgoritmos Profª Letíca LopesSubalgoritmos Profª Letíca Lopes
Subalgoritmos Profª Letíca Lopes
 
PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX PHP: Linguagem + Mysql + MVC + AJAX
PHP: Linguagem + Mysql + MVC + AJAX
 
Aula4
Aula4Aula4
Aula4
 
PHP Básico - Parte 3
PHP Básico - Parte 3PHP Básico - Parte 3
PHP Básico - Parte 3
 
Aula 02 - Curso PHP e MySQL
Aula 02 - Curso PHP e MySQLAula 02 - Curso PHP e MySQL
Aula 02 - Curso PHP e MySQL
 
Programação web ii aulas 06 e 07
Programação web ii   aulas 06 e 07Programação web ii   aulas 06 e 07
Programação web ii aulas 06 e 07
 
PHP 5.3 - Funções
PHP 5.3 - FunçõesPHP 5.3 - Funções
PHP 5.3 - Funções
 
Aula 7 -_aed_-_sub_algoritmos
Aula 7 -_aed_-_sub_algoritmosAula 7 -_aed_-_sub_algoritmos
Aula 7 -_aed_-_sub_algoritmos
 
Aula 7 aed - sub algoritmos
Aula 7   aed - sub algoritmosAula 7   aed - sub algoritmos
Aula 7 aed - sub algoritmos
 
Aula 7 -_aed_-_sub_algoritmos
Aula 7 -_aed_-_sub_algoritmosAula 7 -_aed_-_sub_algoritmos
Aula 7 -_aed_-_sub_algoritmos
 
aula intro de Python sobre Funcoes.pdf
aula intro de  Python sobre  Funcoes.pdfaula intro de  Python sobre  Funcoes.pdf
aula intro de Python sobre Funcoes.pdf
 
Introdução a JavaScript
Introdução a JavaScriptIntrodução a JavaScript
Introdução a JavaScript
 
Ganhando tempo com casos de testes
Ganhando tempo com casos de testesGanhando tempo com casos de testes
Ganhando tempo com casos de testes
 
Evento Front End SP - Organizando o Javascript
 Evento Front End SP - Organizando o Javascript Evento Front End SP - Organizando o Javascript
Evento Front End SP - Organizando o Javascript
 
Aula5
Aula5Aula5
Aula5
 
Curso java 04 - ap is e bibliotecas
Curso java   04 - ap is e bibliotecasCurso java   04 - ap is e bibliotecas
Curso java 04 - ap is e bibliotecas
 
Linguagem de Programação - aula 04
Linguagem de Programação - aula 04Linguagem de Programação - aula 04
Linguagem de Programação - aula 04
 
Oficina de Web Design Lecom - PHP e JavaScript
Oficina de Web Design Lecom - PHP e JavaScriptOficina de Web Design Lecom - PHP e JavaScript
Oficina de Web Design Lecom - PHP e JavaScript
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 

Dernier

tensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxtensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxgia0123
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmicolourivalcaburite
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...marcelafinkler
 
Apresentação | Símbolos e Valores da União Europeia
Apresentação | Símbolos e Valores da União EuropeiaApresentação | Símbolos e Valores da União Europeia
Apresentação | Símbolos e Valores da União EuropeiaCentro Jacques Delors
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...AnaAugustaLagesZuqui
 
INTERTEXTUALIDADE atividade muito boa para
INTERTEXTUALIDADE   atividade muito boa paraINTERTEXTUALIDADE   atividade muito boa para
INTERTEXTUALIDADE atividade muito boa paraAndreaPassosMascaren
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do séculoBiblioteca UCS
 
Acessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidadeAcessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidadeLEONIDES PEREIRA DE SOUZA
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxMarcosLemes28
 
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...azulassessoria9
 
apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...SileideDaSilvaNascim
 
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdfMESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...azulassessoria9
 
Missa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfMissa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfFbioFerreira207918
 
Aula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptAula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptNathaliaFreitas32
 
Questões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPQuestões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPEli Gonçalves
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docPauloHenriqueGarciaM
 
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfRepública Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfLidianeLill2
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...azulassessoria9
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Centro Jacques Delors
 

Dernier (20)

tensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptxtensoes-etnicas-na-europa-template-1.pptx
tensoes-etnicas-na-europa-template-1.pptx
 
Pesquisa Ação René Barbier Livro acadêmico
Pesquisa Ação René Barbier Livro  acadêmicoPesquisa Ação René Barbier Livro  acadêmico
Pesquisa Ação René Barbier Livro acadêmico
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
 
Apresentação | Símbolos e Valores da União Europeia
Apresentação | Símbolos e Valores da União EuropeiaApresentação | Símbolos e Valores da União Europeia
Apresentação | Símbolos e Valores da União Europeia
 
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
INTERTEXTUALIDADE atividade muito boa para
INTERTEXTUALIDADE   atividade muito boa paraINTERTEXTUALIDADE   atividade muito boa para
INTERTEXTUALIDADE atividade muito boa para
 
Sistema de Bibliotecas UCS - Cantos do fim do século
Sistema de Bibliotecas UCS  - Cantos do fim do séculoSistema de Bibliotecas UCS  - Cantos do fim do século
Sistema de Bibliotecas UCS - Cantos do fim do século
 
Acessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidadeAcessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidade
 
Educação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptxEducação Financeira - Cartão de crédito665933.pptx
Educação Financeira - Cartão de crédito665933.pptx
 
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...Aprender as diferentes formas de classificar as habilidades motoras é de extr...
Aprender as diferentes formas de classificar as habilidades motoras é de extr...
 
apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...apostila filosofia 1 ano  1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
apostila filosofia 1 ano 1s (1).pdf 1 ANO DO ENSINO MEDIO . CONCEITOSE CARAC...
 
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdfMESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
 
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
O desenvolvimento é um conceito mais amplo, pode ter um contexto biológico ou...
 
Missa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfMissa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdf
 
Aula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .pptAula 1 - Psicologia Cognitiva, aula .ppt
Aula 1 - Psicologia Cognitiva, aula .ppt
 
Questões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPQuestões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LP
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfRepública Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)
 

Aula 4 php

  • 1. Aula 4 PHP Funções
  • 2. 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.
  • 3. Sintaxe function nome_função(arg1 , arg2, arg3 ... argn) { comandos [ return <expressao> ] }
  • 4. Exemplo <?php function 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); ?>
  • 5. • 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.
  • 6. 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.
  • 7. <?php Function 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”; ?>
  • 8. • 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.
  • 9. • Uma função pode também, em vez de retornar um único valor, retornar um array contendo vários elementos. <?php Function 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>”; } ?>
  • 10. 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.
  • 11. A passagem de parâmetros por referência requer que seja colocado o símbolo ‘&’ antes do nome da variável. Exemplo: <?php function dobro($valor) { $valor = 2 * $valor; } function duplica(&$valor) { $valor = 2*$valor; } $valor = 5; dobro($valor); echo $valor. “<br>”; duplica($valor); echo $valor; ?>
  • 12. 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.
  • 13. • 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”); ?>
  • 14. 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); ?>