Linguagem PHP
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Linguagem PHP

on

  • 2,788 views

Apresentação feita para a materia de Conceitos e Paradigmas em Linguagens de Programação, onde a linguagem escolhida foi o PHP.

Apresentação feita para a materia de Conceitos e Paradigmas em Linguagens de Programação, onde a linguagem escolhida foi o PHP.

Statistics

Views

Total Views
2,788
Views on SlideShare
2,755
Embed Views
33

Actions

Likes
1
Downloads
35
Comments
0

2 Embeds 33

http://www.phpbrazuca.com.br 30
http://www.techgig.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Linguagem PHP Presentation Transcript

  • 1. Linguagem PHP Bruno Cunha Paulo Alves Computação – 6º Período Conceitos e Paradigmas de Linguagens de Programação
  • 2. O que é PHP?O PHP: Hypertext PreprocessorO Linguagem de Scripting fracamente tipadaO Interpretada em tempo de execuçãoO Procedural e Orientada a ObjetosO Normalmente utilizada para criar aplicações web 2
  • 3. O que é PHP?O Portabilidade O Sistemas Operacionais O Windows O RISC OS O AS/400 O SGI IRIX 6.5.x O Mac OS X O Solaris (SPARC, INTEL) O Novell NetWare O Solaris OpenCSW packages O OS/2 O Redhat/CentOS Binaries O Não disponível para Linux O Compilar o código-fonte ou O Pegar o interpretador compilado no site da distro 3
  • 4. Como Funciona o PHP?Cliente Servidor ... Arquivo PHP Base de Dados Serviço de E-Mail Requisição Interação Documento HTML Servidor Web Interpretador PHP 4
  • 5. Como Funciona o PHP?Cliente Servidor ... Arquivo PHP Base de Dados Serviço de E-Mail Requisição Interação Documento HTML Servidor Web Interpretador PHP 5
  • 6. Linha de Comando 6
  • 7. Quem usa PHP? O Wikipedia O Yahoo! O Facebook O Oracle O Twitter O Wordpress O Netbeans O Eclipse O + outros 20 milhões de domínios 7Fonte: Netcraft (http://www.netcraft.com/Survey/)
  • 8. Breve história do PHPO Personal Home Page / Forms Interpreter O Criada por Rasmus Lerdorf O PHP/FI 1.0 liberada em 1995 O PHP/FI 2.0 liberada em 1997O PHP: Hypertext Preprocessor O Criada por Andi Gutmans e Zeev Suraski O PHP 3.0 liberada em 1998 O PHP 4.4 liberada em 2005 8
  • 9. Breve história do PHPO PHP: Hypertext Preprocessor 5 O Novo modelo de objetos O PHP 5.0 liberada em 2004 O PHP 5.3 liberada em 2009O PHP: Hypertext Preprocessor 5.3.3 O Versão Atual O Liberada em Julho de 2010 9
  • 10. SintaxeUsando a linguagem PHP 10
  • 11. Atribuição de Variável<?php$hello = „Hello World‟;echo $hello;?>Saída:Hello World!
  • 12. Tipos de DadosO Primitivos O Valores lógicos O TRUE, FALSE O Números inteiros O 2 O 0x12 O Números com ponto flutuante O 4.5 O 7E – 10 O Cadeias de caracteres O “Olá, $nome” O „Olá, $nome‟ 12
  • 13. Tipos de DadosO Compostos O Arrays O Vetor multidimensional abstrato, através do qual se pode construir listas, filas, pilhas, dicionários e outras construções similares O Objetos O Variável de um tipo de dados criado pelo usuário que pode conter múltiplos atributos, definida através de um método construtor. 13
  • 14. Tipos de DadosO Especiais O Resource O existente a partir da versão 4 da linguagem, usada para referenciar recursos externos: bases de dados, arquivos, sockets... O Null O objeto nulo, atribuido a toda variável apagada, não carregada ou após uma atribuição da constante null O Mixed O usado em declarações de protótipos, determinando que mais de um tipo de retorno é esperado ou mais de um tipo de parâmetro pode ser usado 14
  • 15. Manipulação de TiposO Tipagem dinâmica O Tipo não é declaradoO Fracamente tipada O Conversão de tipos implícita<?php$foo = "0"; // $foo é string$foo += 2; // $foo é agora um inteiro$foo = $foo + 1.3; // $foo é agora um float$foo = 5 + "10 pequenos porcos"; // $foo é inteiro$foo = 5 + "10 minúsculos porcos"; // $foo é inteiro?> 15
  • 16. IdentificadoresO Variáveis O Sempre antecedido pelo símbolo “$”.O Constantes O São declaradas pela função “define” ou palavra reservada “const”. O São referenciadas sem o “$”.<?phpdefine(“PI”, 3.1415); // normalconst RAIO = 35; // > PHP 5.3$circunferencia = 2 * PI * RAIO;?> 16
  • 17. Variáveis VariáveisO Variáveis com capacidade para guardar o nome de outras variáveis.<?php$a = „ola‟;$$a = „ mundo‟;//$$a é o mesmo que escrever $ola.echo ($a.$ola); // olamundoecho ($a.$$a); // olamundo?> 17
  • 18. Arrays (Vetores) Índice Automático Índice Explícito<?php <?php$foo[] = bar; // [0] => bar $foo[0] = bar; // [0] => bar$foo[] = baz; // [1] => baz $foo[1] = baz; // [1] => baz $foo = array($foo = array( 0 => bar, // [0] => bar bar, // [0] => bar 1 => baz, // [1] => baz baz, // [1] => baz ); ); ?>?> 18
  • 19. <?php <?php$tab = array (4=> 1, 2, 3, 9=> 4,5,6,7); $tab = array (“b”=>1, “a”=2, 3, 4);echo $tab[0]; // produz erro echo $tab[“a”]; // imprime 2echo $tab[4]; // imprime 1 echo $tab[0]; // imprime 3echo $tab[5]; // imprime 2 echo $tab[2]; // produz erro?> ?> <?php $tab = array (1, array (2,3)); echo $tab[1][0]; // imprime 2 echo $tab[0]; // imprime 1 echo $tab[0][0]; // produz erro ?>
  • 20. Comparação• Equivalência <?php if (2 == 3) { echo „Não‟; } if (3 == 3) { echo „Sim‟; } if (2 != 3) { echo „Sim‟; } ?>• Identidade <?php if (3 === 3) { echo „Não‟; } if (3 === 3) { echo „Sim‟; } if (3 !== 4) { echo „Sim‟; } ?>
  • 21. Interpolação em Strings Aspas Simples Aspas Duplas<?php <?php$x = 2; $x = 2;echo „Comi $x cookies.‟; echo “Comi $x cookies.”;// Comi $x cookies. echo “Comi {$x} cookies. ”;?> // Comi 2 cookies. ?> 21
  • 22. Estruturas de controleO Condicionais O if, else, ifelse / if else, switchO Iteradores O while, for, do while e foreachO Foreach <?php $lista = array(0, 1, 2, 3, 4); foreach ($lista as $item) {echo $item;} foreach ($lista as $chave => $valor) { echo “Item {$chave}: {$valor}”; } ?> 22
  • 23. Classes e Objetos<?phpclass Foo{ public static $meu_estatico = foo; private $nao_estatica = bar; public static function umMetodoEstatico() { echo $this->nao_estatica; } public function valorEstatico() { return self::$meu_estatico; }}Foo::umMetodoEstatico();$objeto = new Foo();echo $objeto->valorEstatico();?> 23
  • 24. Classes e Objetos<?phpclass Foo{ Todo método/função é public static $meu_estatico = foo; declarado com “function” private $nao_estatica = bar; Uso de seta “->” para acessar public static function umMetodoEstatico() propriedades e métodos { echo $this->nao_estatica; } Operador “::” para acesso a public function valorEstatico() métodos ou propriedades { return self::$meu_estatico; estáticas e constantes de } uma classe.}Foo::umMetodoEstatico();$objeto = new Foo();echo $objeto->valorEstatico();?> 24
  • 25. O Passagem por Valor O Passagem por Omissão <?php <?php function soma ($n) { function gostoDe ($bebida, $outra=„leite‟) $soma=0; { for ($i=1; $i <= $n; $i++) $soma += $i; return “Gosto de {$bebida} com return $soma; {$outra}.”; } ?> } echo gostoDe(„café‟);O Passagem por Referência // Gosto de café com leite. echo gostoDe(„vodka‟, „sprite‟); <?php function soma (&$n) // Gosto de vodka com sprite. { ?> $soma=0; for ($i=1; $i <= $n; $i++) $soma += $i; return $soma; } ?>
  • 26. ExtensõesO Filesystem O $arquivo = file_get_contents(„arquivo.txt‟); O file_ put_ contents(„arquivo.txt‟, $dados);O Processamento de Imagem (GD)O E-Mail (Mail)O Data e HoraO Manipulação de ArraysO Expressão Regular (POSIX Extended) 26
  • 27. Bancos de Dados SuportadosO Adabas D O Direct MS-SQLO dBase O MySQLO Empress O ODBCO FilePro (read-only) O Oracle (OCI7 and OCI8)O Hyperwave O OvrimosO IBM DB2 O PostgreSQLO Informix O SQLiteO Ingres O SolidO InterBase O SybaseO FrontBase O VelocisO mSQL O Unix dbm 27
  • 28. ProjetosO PHP-GTK O Criação de interfaces gráficas para o PHPO Roadsend PHP O Compilador de PHP para binárioO Phalanger O Compilador de PHP para Byte-CodesO Quercus O Permite executar PHP em JavaO HipHop O Tradutor de código-fonte PHP para C++ 28
  • 29. Observações FinaisO PHP não suporta Threads.O Programador não é obrigado a tratar excessões.O PHP não gera somente HTML, é possível criar também PDF, imagens, animações em Flash, XML, etc.O PHP tem suporte a comunicação com a maioria dos protocolos: POP3, COM, NNTP, IMAP, SNMP e incontáveis outros. 29
  • 30. 30
  • 31. Interface com PHP-GTK 31
  • 32. Perguntas? 32