SlideShare uma empresa Scribd logo
1 de 22
Programação para WEB
Regis Pires Magalhães
regispiresmag@gmail.com
PHP: Visão Geral
O que é PHP?
 Linguagem de programação extremamente
popular e usada principalmente para
desenvolvimento de aplicações WEB.
 Explicação da sigla:
 Inicialmente significava Personal Home Page.
 Depois passou a significar PHP: Hypertext Processor.
 Perceba que a sigla usa a própria sigla (recursivo).
Características
 Interpretada / de script;
 Livre / Open Source;
 Principal uso no lado servidor;
 Especialmente voltada para o
desenvolvimento WEB;
 Focada na facilidade de uso.
Popularidade do PHP
 Está entre as 4 Linguagens mais
populares do mundo:
 C, C++, Java e PHP
 Todas derivadas do C.
Popularidade do PHP
 Pesquisa do site LangPop: 05/02/2008
 http://www.langpop.com/
 Popularidade das linguagens de programação.
 Parâmetros de comparação: buscas realizadas em sites famosos
como Google, Yahoo, Amazon e Del.icio.us.
Popularidade do PHP
 Índice Tiobe:
http://www.tiobe.com/
JANEIRO DE 2009
Popularidade do PHP
Popularidade do PHP
 Presente em mais de 20 milhões de domínios
(Abril/2007)

http://www.php.net/usage.php

20.917.850 domínios / 1.224.183 Endereços IP

Fonte: Netcraft
PHP na Internet
Pas de PHP: Sem PHP
Autres: Outros
PHP na Internet
Masqué = Escondido
Inconnu = Desconhecido
Histórico
 1995 – Versão 1 – Criado Rasmus Lerdorf, na forma de scripts
Perl para coletar estatísticas online de seu currículo (Personal
Home Page Tools). Depois, ele escreveu um interpretador em C e
comunicação com SGBDs (PHP/FI – Personal Home Page/Forms
Interpreter).
 Nov/1997 – Versão 2. Recebe seu nome inicial e um interpretador
de formulários (FI) - PHP/FI.
 Código fonte disponibilizado para a comunidade.
 Usada em 50.000 domínios (≈1% dos existentes na época).
Histórico
 Jun/1998 - Versão 3. Similar ao PHP atual. Totalmente reescrita
por Andi Gutmans e Zeev Suraski (israelenses), depois de
descobrirem que o PHP/FI 2.0 poderia ajudá-los a desenvolver
suas próprias aplicações de eCommerce de um projeto da
Universidade.
 Andi, Zeev e Rasmus decidiram anunciar o PHP 3.0 como o
sucessor oficial do PHP/FI 2.0.
 Suporte inicial à orientação a objetos.
 Grande API.
 Sintaxe mais poderosa e consistente.
 Extensibilidade: facilidade para inclusão de módulos extra.
 Suporte a vários bancos de dados, protocolos, etc.
 Rebatizado de PHP: Hypertext Processor.
 Presente em 10% dos servidores Web.
Histórico
 Mai/2000 - Versão 4.
 Melhor performance – Zend Engine (nome derivado de
Zeev e Andi).
 Suporte a vários servidores web, sessões HTTP, buffer de
saída, mais segurança na entrada de dados, novas
construções da linguagem, etc.
 Presente em 20% dos domínios da Internet.
 Jul/2004 - Versão 5.
 Orientação a objetos mais completa.
 Correção de deficiências.
 Incompatibilidades com as versões anteriores.
 Versão 6
 Em andamento.
 Incompatibilidades com as versões anteriores.
Para que serve o PHP
 Script no lado do servidor (server-side)
 Principal uso do PHP
 Script de linha de comando
 Aplicações desktop
 PHP-GTK – extensão não-oficial do PHP.
Vantagens
 Facilidade de uso / aprendizado
 Alta produtividade
 Facilidade de hospedagem
 Grande quantidade
 Custo reduzido
 Multi-Plataforma
 Linux, Windows, Max OS, BSD, etc.
 Multi-Servidor Web
 Apache, IIS, etc.
Vantagens
 Comunidade muito ativa
 Suporte de grandes empresas
 Possibilidade de geração dinâmica de
imagens, arquivos PDF e animações em
Flash.
 Suporte a ampla variedade de SGBDs.
 Extensa API
 Interconexão com outras linguagens
 etc.
Desvantagens
 Mistura de programação estruturada com
POO.
 Facilidade de escrita de código
macarrônico.
 Linguagem de script
 Mais lenta
 Não é bem aceita no mercado corporativo.
Aplicações
 CMS – Content Management System (Sistema de Gerenciamento
de Conteúdo)
 Joomla!, Mambo, Drupal, Xoops, PHP-Nuke
 Blog
 Wordpress
 Wiki
 MediaWiki, DokuWiki, PmWiki
 Fórum
 phpBB
 Comércio Eletrônico
 osCommerce
 Ensino à distância
 Moodle
 Gerenciamento de Projetos
 dotProject
Sites
 Flickr, Yahoo!, Digg, del.icio.us, etc.
Frameworks
 CakePHP, Zend Framework, Symfony,
Code Igniter, Biscuit, Prado, Akelos, etc.
 São tantos que provoca uma grande
indecisão em quem pretende usar.
Estrutura básica – LAMP / WAMP
“Olá, Mundo” em PHP
<html>
<head>
<title>Exemplo</title>
</head>
<body>
<?php
echo "Olá, Mundo!";
?>
</body>
</html>

Mais conteúdo relacionado

Mais procurados

TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#tdc-globalcode
 
Desenvolvimento Web com Php e jQuery
Desenvolvimento Web com Php e jQueryDesenvolvimento Web com Php e jQuery
Desenvolvimento Web com Php e jQueryFabricio Nogueira
 
FISL16 - Acessibilidade e semântica na web com uso de CMS Joomla
FISL16 - Acessibilidade e semântica na web com uso de CMS JoomlaFISL16 - Acessibilidade e semântica na web com uso de CMS Joomla
FISL16 - Acessibilidade e semântica na web com uso de CMS JoomlaAlligo Web
 
TDC2016SP - Flask para Web
TDC2016SP - Flask para WebTDC2016SP - Flask para Web
TDC2016SP - Flask para Webtdc-globalcode
 
Palestra Joomla! Campus Party 2011
Palestra Joomla! Campus Party 2011Palestra Joomla! Campus Party 2011
Palestra Joomla! Campus Party 2011Pedro Renan
 
Joomla! como plataforma de desenvolvimento de soluções próprias
Joomla! como plataforma de desenvolvimento de soluções própriasJoomla! como plataforma de desenvolvimento de soluções próprias
Joomla! como plataforma de desenvolvimento de soluções própriasEmerson Rocha Luiz
 
Orquestrando Aplicações PHP com Symfony
Orquestrando Aplicações PHP com SymfonyOrquestrando Aplicações PHP com Symfony
Orquestrando Aplicações PHP com SymfonyFlávio Lisboa
 
Mini Curso - Venha Joomlar você também! - InfoWeek 2009
Mini Curso - Venha Joomlar você também! - InfoWeek 2009Mini Curso - Venha Joomlar você também! - InfoWeek 2009
Mini Curso - Venha Joomlar você também! - InfoWeek 2009Daniel Caixeta Queiroz Garcia
 
Gestão de conteúdos com aplicações instaladas em servidores
Gestão de conteúdos com aplicações instaladas em servidoresGestão de conteúdos com aplicações instaladas em servidores
Gestão de conteúdos com aplicações instaladas em servidoresHenriqueta Sofia Djalo
 
Hierarquia de templates WordPress
Hierarquia de templates WordPressHierarquia de templates WordPress
Hierarquia de templates WordPressGuga Alves
 
Gerenciamento de dependências em PHP com o Composer
Gerenciamento de dependências em PHP com o ComposerGerenciamento de dependências em PHP com o Composer
Gerenciamento de dependências em PHP com o ComposerAndre Cardoso
 
Criando sites dinâmicos com joomla! - Campus Party Recife 2013
Criando sites dinâmicos com joomla! - Campus Party Recife 2013Criando sites dinâmicos com joomla! - Campus Party Recife 2013
Criando sites dinâmicos com joomla! - Campus Party Recife 2013Jennifer Payne
 

Mais procurados (19)

Principais Tecnologias WEB
Principais Tecnologias WEBPrincipais Tecnologias WEB
Principais Tecnologias WEB
 
TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#TDC2018SP | Trilha .Net - .NET funcional com F#
TDC2018SP | Trilha .Net - .NET funcional com F#
 
Framework Foundation Basicão
Framework Foundation BasicãoFramework Foundation Basicão
Framework Foundation Basicão
 
Desenvolvimento Web com Php e jQuery
Desenvolvimento Web com Php e jQueryDesenvolvimento Web com Php e jQuery
Desenvolvimento Web com Php e jQuery
 
FISL16 - Acessibilidade e semântica na web com uso de CMS Joomla
FISL16 - Acessibilidade e semântica na web com uso de CMS JoomlaFISL16 - Acessibilidade e semântica na web com uso de CMS Joomla
FISL16 - Acessibilidade e semântica na web com uso de CMS Joomla
 
TDC2016SP - Flask para Web
TDC2016SP - Flask para WebTDC2016SP - Flask para Web
TDC2016SP - Flask para Web
 
Palestra Joomla! Campus Party 2011
Palestra Joomla! Campus Party 2011Palestra Joomla! Campus Party 2011
Palestra Joomla! Campus Party 2011
 
Joomla! como plataforma de desenvolvimento de soluções próprias
Joomla! como plataforma de desenvolvimento de soluções própriasJoomla! como plataforma de desenvolvimento de soluções próprias
Joomla! como plataforma de desenvolvimento de soluções próprias
 
Webservices
WebservicesWebservices
Webservices
 
Orquestrando Aplicações PHP com Symfony
Orquestrando Aplicações PHP com SymfonyOrquestrando Aplicações PHP com Symfony
Orquestrando Aplicações PHP com Symfony
 
Mini Curso - Venha Joomlar você também! - InfoWeek 2009
Mini Curso - Venha Joomlar você também! - InfoWeek 2009Mini Curso - Venha Joomlar você também! - InfoWeek 2009
Mini Curso - Venha Joomlar você também! - InfoWeek 2009
 
Gestão de conteúdos com aplicações instaladas em servidores
Gestão de conteúdos com aplicações instaladas em servidoresGestão de conteúdos com aplicações instaladas em servidores
Gestão de conteúdos com aplicações instaladas em servidores
 
Hierarquia de templates WordPress
Hierarquia de templates WordPressHierarquia de templates WordPress
Hierarquia de templates WordPress
 
Introdução ao .NET
Introdução ao .NETIntrodução ao .NET
Introdução ao .NET
 
Gerenciamento de dependências em PHP com o Composer
Gerenciamento de dependências em PHP com o ComposerGerenciamento de dependências em PHP com o Composer
Gerenciamento de dependências em PHP com o Composer
 
Asp.Net Core Fundamentals
Asp.Net Core FundamentalsAsp.Net Core Fundamentals
Asp.Net Core Fundamentals
 
Criando sites dinâmicos com joomla! - Campus Party Recife 2013
Criando sites dinâmicos com joomla! - Campus Party Recife 2013Criando sites dinâmicos com joomla! - Campus Party Recife 2013
Criando sites dinâmicos com joomla! - Campus Party Recife 2013
 
Php enterprise
Php enterprisePhp enterprise
Php enterprise
 
Apresenta
ApresentaApresenta
Apresenta
 

Destaque

Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Robson Ferreira
 
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAndré Constantino da Silva
 
Mouse+Teclado x Toque+Caneta: as modalidades de interação em contextos educac...
Mouse+Teclado x Toque+Caneta: as modalidades de interação em contextos educac...Mouse+Teclado x Toque+Caneta: as modalidades de interação em contextos educac...
Mouse+Teclado x Toque+Caneta: as modalidades de interação em contextos educac...André Constantino da Silva
 
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...André Constantino da Silva
 
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresLogica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresRegis Magalhães
 
Aula sobre texto academico - elaboração do desenvolvimento
Aula sobre texto academico - elaboração do desenvolvimentoAula sobre texto academico - elaboração do desenvolvimento
Aula sobre texto academico - elaboração do desenvolvimentoAndré Constantino da Silva
 
Aula 5 -Avaliação de interfaces de usuário - testes com usuários
Aula 5 -Avaliação de interfaces de usuário - testes com usuáriosAula 5 -Avaliação de interfaces de usuário - testes com usuários
Aula 5 -Avaliação de interfaces de usuário - testes com usuáriosAndré Constantino da Silva
 
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e OperadoresAula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e OperadoresAndré Constantino da Silva
 
Fundamentos da programação de computadores 2ª edição
Fundamentos da programação de computadores   2ª ediçãoFundamentos da programação de computadores   2ª edição
Fundamentos da programação de computadores 2ª ediçãoLeandro Rocha de Oliveira
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programaçãorodfernandes
 

Destaque (19)

Prog web 08-php-mvc
Prog web 08-php-mvcProg web 08-php-mvc
Prog web 08-php-mvc
 
PHP 10 CodeIgniter
PHP 10 CodeIgniterPHP 10 CodeIgniter
PHP 10 CodeIgniter
 
Algoritmos e Programação
Algoritmos e ProgramaçãoAlgoritmos e Programação
Algoritmos e Programação
 
Algoritmo - tipos de dados
Algoritmo - tipos de dadosAlgoritmo - tipos de dados
Algoritmo - tipos de dados
 
Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1Conceitos e técnicas de programação aula 1
Conceitos e técnicas de programação aula 1
 
High Dimensional Data
High Dimensional DataHigh Dimensional Data
High Dimensional Data
 
Aula 1 final
Aula 1 finalAula 1 final
Aula 1 final
 
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de RepetiçãoAula 10 - Comando de Decisão Múltipla e Comandos de Repetição
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
 
Mouse+Teclado x Toque+Caneta: as modalidades de interação em contextos educac...
Mouse+Teclado x Toque+Caneta: as modalidades de interação em contextos educac...Mouse+Teclado x Toque+Caneta: as modalidades de interação em contextos educac...
Mouse+Teclado x Toque+Caneta: as modalidades de interação em contextos educac...
 
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
Aula 9 - Resultado Operandos Matemáticos, Operadores Aritmeticos, Relacionais...
 
Introdução ao TelEduc
Introdução ao TelEducIntrodução ao TelEduc
Introdução ao TelEduc
 
Aula 2 - A área de IHC
Aula 2 - A área de IHCAula 2 - A área de IHC
Aula 2 - A área de IHC
 
Aula 3 – A áera de IHC
Aula 3 – A áera de IHCAula 3 – A áera de IHC
Aula 3 – A áera de IHC
 
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis OperadoresLogica Algoritmo 03 Tipos Expressoes Variaveis Operadores
Logica Algoritmo 03 Tipos Expressoes Variaveis Operadores
 
Aula sobre texto academico - elaboração do desenvolvimento
Aula sobre texto academico - elaboração do desenvolvimentoAula sobre texto academico - elaboração do desenvolvimento
Aula sobre texto academico - elaboração do desenvolvimento
 
Aula 5 -Avaliação de interfaces de usuário - testes com usuários
Aula 5 -Avaliação de interfaces de usuário - testes com usuáriosAula 5 -Avaliação de interfaces de usuário - testes com usuários
Aula 5 -Avaliação de interfaces de usuário - testes com usuários
 
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e OperadoresAula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
Aula 8 - Lógica de Programação - Variáveis, Tipos de dados e Operadores
 
Fundamentos da programação de computadores 2ª edição
Fundamentos da programação de computadores   2ª ediçãoFundamentos da programação de computadores   2ª edição
Fundamentos da programação de computadores 2ª edição
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 

Semelhante a Prog web 01-php-introducao

Artigo de php
Artigo de phpArtigo de php
Artigo de phprobson
 
Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013George Mendonça
 
Apresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPApresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPLorranna Machado
 
PHP para aplicações Web de grande porte
PHP para aplicações Web  de grande portePHP para aplicações Web  de grande porte
PHP para aplicações Web de grande porteFelipe Ribeiro
 
5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução
5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução
5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introduçãoAgrupamento de Escolas da Batalha
 
Zend Framework na IV SAE UFPR 2010
Zend Framework na IV SAE UFPR 2010Zend Framework na IV SAE UFPR 2010
Zend Framework na IV SAE UFPR 2010Flávio Lisboa
 
Apresentação php
Apresentação phpApresentação php
Apresentação phpwilliameier
 
Desenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software LivreDesenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software Livreelliando dias
 
Aula 01 introdução ao php
Aula 01   introdução ao phpAula 01   introdução ao php
Aula 01 introdução ao phpAdriano Castro
 

Semelhante a Prog web 01-php-introducao (20)

Artigo de php
Artigo de phpArtigo de php
Artigo de php
 
Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013Oficina de PHP - Software Freedom Day Luziânia 2013
Oficina de PHP - Software Freedom Day Luziânia 2013
 
Apresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHPApresentação da Linguagem de Programação PHP
Apresentação da Linguagem de Programação PHP
 
Primeira Aula PHP
Primeira Aula PHPPrimeira Aula PHP
Primeira Aula PHP
 
Linguagem PHP
Linguagem PHPLinguagem PHP
Linguagem PHP
 
PHP para aplicações Web de grande porte
PHP para aplicações Web  de grande portePHP para aplicações Web  de grande porte
PHP para aplicações Web de grande porte
 
5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução
5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução
5 – Desenvolvimento de Páginas Web Dinâmicas PHP: introdução
 
Zend Framework na IV SAE UFPR 2010
Zend Framework na IV SAE UFPR 2010Zend Framework na IV SAE UFPR 2010
Zend Framework na IV SAE UFPR 2010
 
Apresentação php
Apresentação phpApresentação php
Apresentação php
 
Manual PHP
Manual PHPManual PHP
Manual PHP
 
File3
File3File3
File3
 
File3
File3File3
File3
 
Páginas dinâmicas
Páginas dinâmicasPáginas dinâmicas
Páginas dinâmicas
 
Desenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software LivreDesenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software Livre
 
Introducao ao PHP @edgarsandi
Introducao ao PHP @edgarsandiIntroducao ao PHP @edgarsandi
Introducao ao PHP @edgarsandi
 
PHP Presente e Futuro
PHP Presente e FuturoPHP Presente e Futuro
PHP Presente e Futuro
 
Seminário: PHP
Seminário: PHPSeminário: PHP
Seminário: PHP
 
PHP.ppt
PHP.pptPHP.ppt
PHP.ppt
 
PHP.ppt
PHP.pptPHP.ppt
PHP.ppt
 
Aula 01 introdução ao php
Aula 01   introdução ao phpAula 01   introdução ao php
Aula 01 introdução ao php
 

Mais de Regis Magalhães

Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducaoRegis Magalhães
 
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
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webRegis Magalhães
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosRegis Magalhães
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosRegis Magalhães
 
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
 
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
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webRegis Magalhães
 
Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011Regis Magalhães
 
Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Regis Magalhães
 
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoJava 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoRegis Magalhães
 

Mais de Regis Magalhães (20)

Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
 
Prog web 01-php-introducao
Prog web 01-php-introducaoProg web 01-php-introducao
Prog web 01-php-introducao
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
 
Prog web 09-php-crud-mvc
Prog web 09-php-crud-mvcProg web 09-php-crud-mvc
Prog web 09-php-crud-mvc
 
Prog web 07-pdo
Prog web 07-pdoProg web 07-pdo
Prog web 07-pdo
 
Prog web 06-php-oo
Prog web 06-php-ooProg web 06-php-oo
Prog web 06-php-oo
 
Prog web 05-php-mysql
Prog web 05-php-mysqlProg web 05-php-mysql
Prog web 05-php-mysql
 
Prog web 04-php-gd
Prog web 04-php-gdProg web 04-php-gd
Prog web 04-php-gd
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhosProg web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passosProg web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
 
Prog web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_webProg web 00-modelo-cliente_servidor_web
Prog web 00-modelo-cliente_servidor_web
 
Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data Tutorial - Conferencia W3C Brasil 2011
 
Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011Linked Data - Minicurso - SBBD 2011
Linked Data - Minicurso - SBBD 2011
 
Curso Ruby
Curso RubyCurso Ruby
Curso Ruby
 
Easy Rails
Easy RailsEasy Rails
Easy Rails
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoJava 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral Detalhado
 

Prog web 01-php-introducao

  • 1. Programação para WEB Regis Pires Magalhães regispiresmag@gmail.com PHP: Visão Geral
  • 2. O que é PHP?  Linguagem de programação extremamente popular e usada principalmente para desenvolvimento de aplicações WEB.  Explicação da sigla:  Inicialmente significava Personal Home Page.  Depois passou a significar PHP: Hypertext Processor.  Perceba que a sigla usa a própria sigla (recursivo).
  • 3. Características  Interpretada / de script;  Livre / Open Source;  Principal uso no lado servidor;  Especialmente voltada para o desenvolvimento WEB;  Focada na facilidade de uso.
  • 4. Popularidade do PHP  Está entre as 4 Linguagens mais populares do mundo:  C, C++, Java e PHP  Todas derivadas do C.
  • 5. Popularidade do PHP  Pesquisa do site LangPop: 05/02/2008  http://www.langpop.com/  Popularidade das linguagens de programação.  Parâmetros de comparação: buscas realizadas em sites famosos como Google, Yahoo, Amazon e Del.icio.us.
  • 6. Popularidade do PHP  Índice Tiobe: http://www.tiobe.com/ JANEIRO DE 2009
  • 8. Popularidade do PHP  Presente em mais de 20 milhões de domínios (Abril/2007)  http://www.php.net/usage.php  20.917.850 domínios / 1.224.183 Endereços IP  Fonte: Netcraft
  • 9. PHP na Internet Pas de PHP: Sem PHP Autres: Outros
  • 10. PHP na Internet Masqué = Escondido Inconnu = Desconhecido
  • 11. Histórico  1995 – Versão 1 – Criado Rasmus Lerdorf, na forma de scripts Perl para coletar estatísticas online de seu currículo (Personal Home Page Tools). Depois, ele escreveu um interpretador em C e comunicação com SGBDs (PHP/FI – Personal Home Page/Forms Interpreter).  Nov/1997 – Versão 2. Recebe seu nome inicial e um interpretador de formulários (FI) - PHP/FI.  Código fonte disponibilizado para a comunidade.  Usada em 50.000 domínios (≈1% dos existentes na época).
  • 12. Histórico  Jun/1998 - Versão 3. Similar ao PHP atual. Totalmente reescrita por Andi Gutmans e Zeev Suraski (israelenses), depois de descobrirem que o PHP/FI 2.0 poderia ajudá-los a desenvolver suas próprias aplicações de eCommerce de um projeto da Universidade.  Andi, Zeev e Rasmus decidiram anunciar o PHP 3.0 como o sucessor oficial do PHP/FI 2.0.  Suporte inicial à orientação a objetos.  Grande API.  Sintaxe mais poderosa e consistente.  Extensibilidade: facilidade para inclusão de módulos extra.  Suporte a vários bancos de dados, protocolos, etc.  Rebatizado de PHP: Hypertext Processor.  Presente em 10% dos servidores Web.
  • 13. Histórico  Mai/2000 - Versão 4.  Melhor performance – Zend Engine (nome derivado de Zeev e Andi).  Suporte a vários servidores web, sessões HTTP, buffer de saída, mais segurança na entrada de dados, novas construções da linguagem, etc.  Presente em 20% dos domínios da Internet.  Jul/2004 - Versão 5.  Orientação a objetos mais completa.  Correção de deficiências.  Incompatibilidades com as versões anteriores.  Versão 6  Em andamento.  Incompatibilidades com as versões anteriores.
  • 14. Para que serve o PHP  Script no lado do servidor (server-side)  Principal uso do PHP  Script de linha de comando  Aplicações desktop  PHP-GTK – extensão não-oficial do PHP.
  • 15. Vantagens  Facilidade de uso / aprendizado  Alta produtividade  Facilidade de hospedagem  Grande quantidade  Custo reduzido  Multi-Plataforma  Linux, Windows, Max OS, BSD, etc.  Multi-Servidor Web  Apache, IIS, etc.
  • 16. Vantagens  Comunidade muito ativa  Suporte de grandes empresas  Possibilidade de geração dinâmica de imagens, arquivos PDF e animações em Flash.  Suporte a ampla variedade de SGBDs.  Extensa API  Interconexão com outras linguagens  etc.
  • 17. Desvantagens  Mistura de programação estruturada com POO.  Facilidade de escrita de código macarrônico.  Linguagem de script  Mais lenta  Não é bem aceita no mercado corporativo.
  • 18. Aplicações  CMS – Content Management System (Sistema de Gerenciamento de Conteúdo)  Joomla!, Mambo, Drupal, Xoops, PHP-Nuke  Blog  Wordpress  Wiki  MediaWiki, DokuWiki, PmWiki  Fórum  phpBB  Comércio Eletrônico  osCommerce  Ensino à distância  Moodle  Gerenciamento de Projetos  dotProject
  • 19. Sites  Flickr, Yahoo!, Digg, del.icio.us, etc.
  • 20. Frameworks  CakePHP, Zend Framework, Symfony, Code Igniter, Biscuit, Prado, Akelos, etc.  São tantos que provoca uma grande indecisão em quem pretende usar.
  • 21. Estrutura básica – LAMP / WAMP
  • 22. “Olá, Mundo” em PHP <html> <head> <title>Exemplo</title> </head> <body> <?php echo "Olá, Mundo!"; ?> </body> </html>