Você está na página 1de 7

Tutorial O que o PHP pode fazer?

Qualquer coisa. O PHP focado para ser uma linguagem de script do lado do servidor, portanto, voc pode fazer qualquer coisa que outro programa CGI pode fazer, como: coletar dados de formulrios, gerar pginas com contedo dinmico ou enviar e receber cookies. Mas o PHP pode fazer muito mais. Esses so os maiores campos onde os scripts PHP podem ser utilizados:

Script no lado do servidor (server-side). Este o mais tradicional e principal campo de atuao do PHP. Voc precisa de trs coisas para seu trabalho. O interpretador do PHP (como CGI ou mdulo), um servidor web e um browser. Basta rodar o servidor web conectado a um PHP instalado. Voc pode acessar os resultados de seu programa PHP com um browser, visualizando a pgina PHP atravs do servidor web. Todos eles podem rodar na sua mquina, em casa, para voc experimentar programao com o PHP. Veja a seo das instrues de instalao para mais informaes. Script de linha de comando. Voc pode fazer um script PHP funcionar sem um servidor web ou browser. A nica coisa necessria o interpretador. Esse tipo de uso ideal para script executados usando o cron ou o Agendador de Tarefas (no Windows). Esses scripts podem ser usados tambm para rotinas de processamento de texto. Veja a seo Utilizando o PHP em linha de comando para maiores informaes. Escrevendo aplicaes desktop. O PHP provavelmente no a melhor linguagem para criao de aplicaes desktop com interfaces grficas, mas se voc conhece bem o PHP, e gostaria de usar alguns dos seus recursos avanados nas suas aplicaes do lado do cliente, voc pode usar o PHP-GTK para escrever programas assim. Isso ainda lhe habilita a escrever aplicaes multi-plataformas. O PHP-GTK uma extenso do PHP, no disponibilizada na distribuio oficial. Caso esteja interessado no PHP-GTK, visite o site do projeto.

O PHP pode ser utilizado na maioria dos sistemas operacionais, incluindo Linux, vrias variantes Unix (incluindo HP-UX, Solaris e OpenBSD), Microsoft Windows, Mac OS X, RISC OS, e provavelmente outros. O PHP tambm suportado pela maioria dos servidores web atuais, incluindo Apache, Microsoft Internet Information Server, Personal Web Server, Netscape and iPlanet Servers, Oreilly Website Pro Server, Caudium, Xitami, OmniHTTPd, e muitos outros. O PHP pode ser configurado como mdulo para a maioria dos servidores, e para os outros como um CGI comum. Com o PHP, portanto, voc tem a liberdade para escolher o sistema operacional e o servidor web. Do mesmo modo, voc pode escolher entre utilizar programao estrutural ou programao orientada a objeto, ou ainda uma mistura deles. Mesmo sem todos os recursos da POO (Programao Orientada a Objetos) implementados no PHP 4, muitas bibliotecas de cdigo e grandes aplicaes (incluindo a biblioteca PEAR) so escritas somente em cdigo POO. O PHP 5 corrige as fraquezas da POO do PHP 4, e introduz um modelo de objetos completo. Com PHP voc no est limitado a gerar somente HTML. As habilidades do PHP incluem gerao de imagens, arquivos PDF e animaes Flash (utilizando libswf ou Ming) criados dinamicamente, on the fly. Voc pode facilmente criar qualquer padro texto, como XHTML e outros arquivos XML. O PHP pode gerar esses padres e os salvar no sistema de arquivos, em vez de imprimi-los, formando um cache dinmico de suas informaes no lado do servidor. Talvez a mais forte e mais significativa caracterstica do PHP seu suporte a uma ampla variedade de banco de dados. Escrever uma pgina que consulte um banco de dados incrivelmente simples. Os seguintes bancos de dados so atualmente suportados:

Adabas D

dBase Empress FilePro (read-only) Hyperwave IBM DB2 Informix Ingres InterBase FrontBase mSQL Direct MS-SQL MySQL ODBC Oracle (OCI7 and OCI8) Ovrimos PostgreSQL SQLite Solid Sybase Velocis Unix dbm

Tambm foi providenciado uma abstrao de banco de dados (chamada PDO) permitindo a voc utilizar qualquer banco de dados transparentemente com sua extenso. Adicionalmente, o PHP suporta ODBC (Open Database Connection, ou Padro Aberto de Conexo com Bancos de Dados), permitindo que voc utilize qualquer outro banco de dados que suporte esse padro mundial. O PHP tambm tem suporte para comunicao com outros servios utilizando protocolos como LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (em Windows) e incontveis outros. Voc pode abrir sockets de rede e interagir diretamente com qualquer protocolo. O PHP tambm suporta o intercmbio de dados complexos WDDX, utilizado em virtualmente todas as linguagens de programao para web. Falando de comunicao, o PHP implementa a instanciao de objetos Java e os utiliza transparentemente como objetos PHP. Voc ainda pode usar sua extenso CORBA para acessar objetos remotos. O PHP extremamente til em recursos de processamento de texto, do POSIX Estendido ou expresses regulares Perl at como interpretador para documentos XML. No processamento de XML, o PHP 4 suporta os padres SAX e DOM, alm de voc tambm poder utilizar a extenso XSL para transformar documentos XML. O PHP 5 padroniza toda a extenso XML a partir da base slida da libxml2, alm de estender os recursos com o acrscimo ao SimpleXML e XMLReader. Por ltimo mas longe de terminar, temos tambm outras extenses interessantes: funes para o search engine mnoGoSearch, funes para Gateway IRC, vrios utilitrios de compresso (gzip, bz2, zip), calendrio e converses de datas, traduo... Como voc pode ver, esta pgina no suficiente para descrever todos os recursos e benefcios que o PHP pode oferecer. Leia nas sees sobre a Instalao do PHP, e veja a referncia das funes para detalhes das extenses mencionadas aqui.

O que eu preciso?
Neste tutorial ns presumimos que seu servidor tem suporte ao PHP ativado e que todos os arquivos terminam com a extenso .php so tratados pelo PHP. Na maioria dos servidores esta a extenso padro para os arquivos PHP, mas pergunte ao seu administrador s para ter certeza. Se o seu servidor suporta PHP ento voc no precisa fazer mais nada. Apenas crie seus arquivos .php e coloque-os no seu diretrio web e o servidor ir com um passe de mgica mostrar suas pginas PHP. No h nenhuma necessidade de compilao para qualquer ferramenta extra. Pense nesses arquivos PHP como se eles fossem pginas HTML com algumas tags mais que deixaram voc fazer coisas mais interessantes do que somente pginas HTML estticas. Digamos que voc quer salvar sua preciosa conexo e desenvolver tudo localmente. Neste caso, voc precisar instalar um servidor web, como o Apache, e claro o PHP. Voc tambm ir querer instalar uma base de dados, como por exemplo o MySQL. Voc pode instal-los separadamente ou pelo jeito mais simples que usar os pacotes prconfigurados. que iro instalar automaticamente todas as coisas com apenas alguns cliques. super fcil configurar um servidor web com suporte ao PHP em qualquer sistema operacional, incluindo Linux e Windows. No Linux, voc deve procurar o rpmfind que muito til na localizao de pacotes RPM.

Sua primeira pgina PHP


Crie um novo arquivo chamado ola.php e coloque-o em seu diretrio root do seu servidor web (DOCUMENT_ROOT) com o seguinte contedo: Exemplo #1 Nosso primeiro script PHP: ola.php
<html> <head> <title>PHP Teste</title> </head> <body> <?php echo "<p>Ol Mundo</p>"; ?> </body> </html>

Use o seu navegador para acessar o arquivo pelo endereo de seu servidor web, ao final do endereo coloque o arquivo "/ola.php" como referncia. Quando o desenvolvimento local voc usar uma url como esta http://localhost/ola.php ou http://127.0.0.1/ola.php mas dependendo da configurao do seu servidor web. Entretanto isto est fora do escopo deste tutorial, veja tambm as diretivas DocumentRoot e ServerName dos arquivos de configurao do seu servidor web. (no Apache o nome do arquivo httpd.conf). Se tudo foi configurado corretamente, o arquivo ir ser interpretado pelo PHP e ir mostrar a seguinte mensagem de sada no seu navegador:
<html> <head> <title>PHP Teste</title> </head> <body> <p>Ol Mundo</p> </body> </html>

Note que isto no como em um script CGI. O arquivo no precisa ser executvel ou especial

em nenhum aspecto. Pense nesse arquivo como um arquivo HTML normal mas com a diferena que ele pode conter algumas tags especiais a mais que permitem a voc fazer coisas mais interessantes do que somente pginas HTML estticas. Este exemplo extremamente simples e voc realmente no precisa usar o PHP para criar uma pgina como esta. Tudo o que ele faz mostrar uma mensagemOl Mundo usando a declarao echo do PHP. Se voc tentar rodar este exemplo e ele no mostrar nenhuma mensagem de sada, ou aparecer uma caixa de dilogo pedindo para voc salvar o arquivo, ou voc ver o arquivo em formato de texto, h uma grande chance do seu servidor no ter o PHP habilitado. Pea ao seu administrar para habilitar o PHP para voc, usando o captulo de Instalao do manual. Se voc est desenvolvendo localmente, tambm leia o captulo indicado acima para ter certeza de que configurou tudo corretamente. Se os problemas continuarem a persistir, no hesite em usar uma das vrias formas de ajuda que o PHP pode lhe oferecer. O objetivo do exemplo mostrar o formato especial das tags do PHP. Neste exemplo ns usamos <?php para indicar que partir daquele ponto comea um cdigo PHP. Ento ns colocamos uma declarao de fechamento para indicar que o script PHP acabou, usando a tag ?>. Voc pode usar o PHP em qualquer parte do seu cdigo HTML, e tambm pode usar vrias tags de abertura e fechamento no mesmo arquivo. Para mais detalhes, leia a seo do manual que fala da sintaxe bsica do PHP. Nota: Uma Nota sobre os Editores de Texto H muitos editores de textos e Integrated Development Enviroments (IDEs) que voc pode usar para criar, editar e gerenciar arquivos PHP. Uma lista parcial destas ferramentas pode ser vista na Lista de Editores para PHP. Se voc gostaria de recomendar algum editor, por favor visite o endereo acima e pergunte ao administrador do site para adicionar o seu editor lista. Ter um editor que colora as sintaxes das tags pode ser muito til. Nota: Uma Nota sobre os Processadores Word Processadores Word como o StarOffice Write, Microsoft Word e Abiword no so boas escolhas para editar arquivos PHP. Se voc deseja usar um desses para testar seus scripts, voc precisa verificar se voc est salvando os arquivos como TEXTO PLANO ou o PHP no ir ser capaz de ler e executar o seu script. Nota: Uma Nota sobre o Bloco de Notas do Windows Se voc est escrevendo seus scripts PHP usando o Bloco de Notas do Windows, voc precisar verificar que os arquivos esto sendo salvos com a extenso .php. (O Bloco de Notas do Windows adiciona automaticamente a extenso .txt aos arquivos a no ser que voc siga um dos passos a seguir para previnir isto). Quando a caixa de dilogo Salvar estiver aberta e voc for digitar o nome do seu arquivo, coloque o nome do arquivo entre aspas (i.e. "ola.php"). Uma alternativa, voc clicar na lista drop-down 'Documentos de Texto' na caixa de dilogo salvar e alterar para "Todos os tipos de arquivos". Voc agora pode digitar o nome do seu arquivo sem usar as aspas. Agora que voc criou com sucesso um script simples em PHP, hora de criar o mais famoso dos scripts PHP! Uma chamada funo phpinfo() e voc ver todas as informaes sobre seu sistema e configuraes disponveis como a de Variveis Pr-definidas, mdulos carregados pelo PHP, e as opes deconfigurao. Tire algum tempo para ver e rever estas importantes informaes.

Algo til

Vamos fazer alguma coisa um pouco mais til agora. Ns iremos checar qual o tipo de navegador que o visitante est utilizando para ver a nossa pgina. De fato, para fazer isto ns teremos que checar qual o valor da string agente que o navegador envia como parte de sua requisio HTTP. Esta informao armazenada em uma varivel. Variveis sempre comeam com um smbolo de cifro no PHP. A varivel que nos interessa no momento a$_SERVER["HTTP_USER_AGENT"] . Nota: Nota sobre as Auto-Globais do PHP $_SERVER uma varivel especial reservada do PHP que contm todas as informaes sobre o servidor web. Ela conhecida como uma Auto-Global (ou Superglobal). Veja a pgina do manual relacionada as Auto-globais para mais informaes. Estas variveis especiais foram introduzidas no PHP 4.1.0. Antes desta verso, ns usvamos os velhos arrays $HTTP_*_VARS, como o $HTTP_SERVER_VARS. Entretanto, este estilo antigo foi removido, porm ainda existem. (Veja a nota sobre cdigos antigos.) Para chamar esta varivel, ns podemos fazer isto: Exemplo #1 Imprimindo a varivel (Elemento Array)
<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>

Um exemplo de sada deste script poderia ser:


Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)

H muitos tipos de variveis disponveis no PHP. No exemplo acima ns escrevemos um elemento Array. Arrays podem ser muito teis. $_SERVER somente uma varivel que automaticamente disponibilizada para voc pelo PHP. Uma lista de Variveis Reservadas pode ser vista na seoVariveis Reservadas do manual ou voc pode pegar uma lista completa delas criando um arquivo como este: Exemplo #2 Exibindo todas as variveis pr-definidas usando a funo phpinfo()
<?php phpinfo(); ?>

Se voc carregar este arquivo no seu navegador voc ir ver uma pgina com todas as informaes sobre o PHP junto com uma lista de todos os tipos de variveis disponveis para voc. Voc pode colocar mltiplas declaraes PHP dentro da tag PHP e criar pequenos blocos de cdigos que fazem muito mais do que um simples echo. Por exemplo, se voc quer checar se o navegador o Internet Explorer faa algo como isso: Exemplo #3 Exemplo usando controles de declaraes e funes
<?php if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) { echo "Voc est usando o Internet Explorer<br />"; } ?>

Um exemplo de Sada seria:


Voc est usando o Internet Explorer<br />

Aqui ns mostraremos alguns novos conceitos. Ns temos a declarao if. Se voc familiar com a sintaxe bsica usada pela linguagem C isto parecer ser lgico para voc. Se voc no conhece a linguagem C ou alguma outra linguagem onde a sintaxe usada acima usada, voc provavelmente precisar de um livro introdutrio sobre o PHP, d uma lida nos primeiros captulos do livro, ou leia a parte sobre a Referncia da Linguagem no manual. Voc pode encontrar uma lista de livros sobre PHP

em at http://www.php.net/books.php. O segundo conceito que iremos abordar a chamada funo strstr(). A funo strstr() trazida junto com o PHP, ela faz uma busca em uma palavra por uma outra palavra. Neste caso ns procuramos pela palavra "MSIE" dentro de $_SERVER["HTTP_USER_AGENT"] . Se a palavra for encontrada, a funo retornaTRUE e se ela no for encontrada a funo retorna FALSE. Se o retorno for TRUE, a declarao if ocorre e o cdigo dentro dela executado. Caso contrrio, o cdigo no executado. Sintase vontade para criar exemplos similares com o if, else, e outras funes como a strtoupper() e strlen(). Cada uma delas est no manual com seus respectivos exemplos. Ns podemos avanar agora e mostrar a voc como alternar entre os modos PHP mesmo que voc esteja executando blocos de cdigos: Exemplo #4 Mesclando entre os modos PHP e HTML
<?php if (strstr($_SERVER["HTTP_USER_AGENT"], "MSIE")) { ?> <h3>strstr retorna verdadeiro</h3> <center><b>Voc est usando o Internet Explorer</b></center> <?php } else { ?> <h3>strstr retorna falso</h3> <center><b>Voc no est usando o Internet Explorer</b></center> <?php } ?>

Um exemplo de sada deste script poderia ser:


<h3>strstr retorna verdadeiro</h3> <center><b>Voc est usando o Internet Explorer</b></center>

Ao invs de usar a declarao echo do PHP para imprimir a sada dos dados, ns samos do modo do PHP e usamos o HTML normal. O importante notar aqui que a lgica do script continua intacta. Somente alguns blocos HTML ser enviados de acordo com o que a declarao strstr() retornar, ou seja TRUE ou FALSE. Em outras palavras, se a palavra MSIE for encontrada ou no.

Tratando Formulrios
[edit] Last updated: Fri, 12 Jul 2013

Sua primeira pgina PHP

add a noteUser Contributed Notes

Algo til - [3 notes] up down

0
siso dot abraham at gmail dot com 1 hour ago
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>HTML Y PHP</title> </head> <body> <?php if (strpos(/*Esto ->>Es un variable predefinida de PHP*/$_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {

?> <h3>strpos() debe haber devuelto no falso</h3> <p>Est usando Internet Explorer</p> <?php } else { ?> <h3>strpos() debi devolver algo diferente de falso</h3> <p>No est usando Internet Explorer</p> <?php } ?> </body> </html>

Tratando Formulrios
Uma das caractersticas mais fortes do PHP o jeito como ele trata formulrios HTML. O conceito bsico que importante entender que qualquer elemento de formulrio em um formulrio ir automaticamente ficar disponvel para voc us-los em seus scripts PHP. Por favor leia a seo Variveis externas do PHP para mais informaes e exemplos de como usar formulrios com PHP. Aqui vai um exemplo: Exemplo #1 Um simples formulrio HTML
<form action="acao.php" method="POST"> Seu nome <input type="text" name="nome" /> Sua idade: <input type="text" name="idade" /> <input type="submit"> </form>

No h nada de especial neste formulrio. um formulrio HTML comum sem nenhuma tag especial de qualquer tipo. Quando o usurio preencher este formulrio e clicar no boto enviar, a pgina action.php chamada. Neste arquivo ns teremos algo como este: Exemplo #2 Imprimindo dados de nosso formulrio
Oi <?php echo $_POST["nome"]; ?>. Voc tem <?php echo $_POST["idade"]; ?> anos.

Um exemplo de sada deste script seria:


Oi Thomas. Voc tem 18 anos.

bvio o que este script faz. No h nada de mais nele. As variveis $_POST["nome"] e $_POST["idade"] so automaticamente criadas para voc pelo PHP. Antigamente ns usvamos a auto-global $_SERVER, agora ns simplesmente usamos a auto-global $_POST que contm todos os dados vindos do POST. Se voc usar o mtodo GET ento nossas informaes residiro na auto-global $_GET. Voc tambm pode usar a auto-global $_REQUEST se voc no se importa com o tipo de dados que vm do seu formulrio. Esta auto-global contm uma mescla de GET, POST, COOKIE e FILE. Veja tambm a funoimport_request_variables().

Você também pode gostar