SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
ESCOLA SECUNDÁRIA DE SANTO ANDRÉ



                   Curso e Turma:

Instalação e Manutenção de Sistemas Informáticos, EFA 4S



                      Disciplina:

                  Programação e Web



                 Nome do Trabalho:

                   “Linguagem PHP"



                   Nome do Aluno:

                      Tiago Lopes



                 Nome do Professor:

                   Guilherme Batista



                  Data do Trabalho:

                      17-12-2009
Índice
Introdução                                Pag.1

Linguagem PHP                             Pag.2

Como surgiu a Linguagem PHP               Pag.3

PHP 3                                     Pag.3

PHP 4                                     Pag.3

PHP 5                                     Pag.3

O Código PHP                              Pag.4

              Separador de instruções     Pag.4

              Nomes de variáveis          Pag.4

              Comentários                 Pag.5

              Os primeiros Scripts        Pag.5 e 6

              Formulários HTML            Pag.6 e 7

              Interagir com o Browser     Pag.7

              Acesso na Base de dados     Pag.8

              Ligação com o servidor      Pag.8

              Selecção na Base de dados   Pag.9

              Execução de queries SQL     Pag.10

              Query SELECT                Pag.11 e 12

Conclusão                                 Pag.13

Referências                               Pag.14
Introdução
O trabalho consiste numa pesquisa sobre a Linguagem PHP – uma linguagem de script
para a construção de Homepages dinâmicas, que é executada no servidor http.
PHP também tem como uma das características mais importantes o suporte a um
grande número de base de dados.
Linguagem PHP
PHP (um acrónimo recursivo para "PHP: Hypertext Preprocessor") é uma linguagem de
programação interpretada, livre e muito utilizada para gerar o conteúdo dinâmico na
WEB, sendo ela interpretada via Browser.

Basicamente, qualquer coisa pode ser feita pelo programa CGI, pode também ser feita
com PHP, como colectar dados de um formulário, gerar páginas dinamicamente ou
enviar e receber cookies.

PHP também tem como uma das características mais importantes o suporte a um
grande número de base de dados, como por exemplo: dBase, Interbase, mSQL,
mySQL, Oracle, Sybase, PostgreSQL entre outros. Construir uma página baseada em
base de dados torna-se uma tarefa extremamente simples com PHP.

Além disso, PHP tem suporte a outros serviços através de protocolos como IMAP,
SNMP, NNTP, POP3 e, logicamente, HTTP. Ainda é possível abrir sockets e interagir
com outros protocolos.
Como surgiu a Linguagem PHP?
A Linguagem PHP surgiu por volta de 1994, com um pacotes de programas CGI criados
por Rasmus Lerdof, (Personal Home Page Tools), para substituir um conjunto de
scripts Perl, que usava no desenvolvimento de sua página pessoal. Em 1997 foi
lançado o novo pacotes da Linguagem PHP com o nome de PHP/FI, com a ferramenta
Forms Interpreter, um interpretador de comandos SQL.

Trata-se de uma linguagem extremamente modularizada, o que a torna ideal para
instalação e uso em servidores Web. Diversos módulos são criados no repositório de
extensões PECL (PHP Extension Community Library) e alguns desses módulos são
introduzidos como padrão em novas versões da linguagem. Pode ser, dependendo da
configuração do servidor, embarcada no código HTML. Existem versões do PHP
disponíveis para os seguintes sistemas operacionais: Windows, Linux, FreeBSD, Mac
OS, OS/2, AS/400, Novell Netware, RISC OS, AIX, IRIX e Solaris.

PHP 3
Mais tarde, Zeev Suraski desenvolveu o analisador do PHP 3 que contava com o
primeiro recurso de orientação dos objectos, que dava para alcançar alguns pacotes.
Tinha herança e dava aos desenvolvedores a possibilidade de implementar
propriedades e métodos funcionais.

PHP 4
Pouco depois, Zeev Suraski e Andi Gutmans, criaram o PHP 4, abandonando o PHP 3,
dando mais força à máquina da linguagem e maior número de recursos de orientação
a objectos. O problema que apresentou o PHP 4 foi a criação de cópias de objectos,
pois a linguagem ainda não trabalhava com apontadores ou handlers, como são as
linguagens Java , Small talk entre outras.

O problema foi resolvido na versão actual do PHP, a versão 5, que já trabalha com
handlers. Caso se copie um objecto, se copiarmos um apontador, se fizermos alguma
alteração na versão original do objecto, todas sofrem a alteração, o que não acontecia
na Linguagem PHP 4.

PHP 5
Em Junho de 2004 foi lançada a versão PHP 5, introduzindo um novo modelo de
orientação a objecto, incluindo a reformulação dos construtores e adição de
destrutores, visibilidade de acesso, abstracção de objecto e interfaces de objectos.

O tratamento de objectos do PHP foi completamente reescrito, permitindo um melhor
desempenho e com mais vantagens. Enquanto na versão anterior era preciso muito
esforço para compreender à orientação a objectos e aos padrões de projectos (alguns

não eram possíveis), o PHP 5 veio para acabar essa deficiência. Ainda sofre nesse
sentido, contudo, por problemas devido a ser uma linguagem de ripagem fraca.
O código PHP
O código PHP fica introduzido no próprio HTML.
O interpretador identifica quando um código é PHP pelas seguintes “tags”:



        <?php
        comandos
        ?>

        <script language=”php”>
        comandos
        </script>

        <?
        comandos
        ?>

        <%
        comandos
        %>


O tipo de “tags” mais utilizado é o terceiro, que consiste em uma “abreviação” do
primeiro. Para utilizá-lo, é necessário habilitar a opção “short-tags” na configuração do
PHP. O último tipo serve para facilitar o uso por programadores acostumados à sintaxe
de ASP. Para utilizá-lo também é necessário habilitá-lo no PHP, através do arquivo de
configuração “php.ini”.



Separador de instruções

Entre cada instrução em PHP é preciso utilizar o ponto-e-vírgula, assim como em C,
Perl e outras linguagens mais conhecidas. Na última instrução do bloco de script não é
necessário o uso do ponto-e-vírgula, mas por questões estéticas recomenda-se
sempre.


Nomes de variáveis

A variável em PHP tem um nome composto pelo carácter $ e uma string, que deve
iniciar por uma letra ou um carácter “_”. PHP é case sensitive, ou seja, as variáveis
$vivas e $VIVAS são diferentes. Por isso é preciso ter muito cuidado ao definir os
nomes das variáveis. Evitar sempre os nomes em maiúsculas, como podemos ver mais
á frente, o PHP já possui algumas variáveis pré-definidas cujos nomes são formados
por letras maiúsculas.
Comentários


Comentários de uma linha:

Introduzir um comentário até ao final da linha ou até ao final do bloco de código PHP.
Pode ser designado pelo carácter “#” ou por duas barras (//).

Exemplo:

<? echo “teste”; #isto é um teste?>
<? echo “teste”; //este teste é similar ao anterior?>



Comentários de uma ou mais linhas:

Podemos introduzir os caracteres “/*” para o início do bloco e “*/” para o final do
comentário.

Exemplos:

<?
echo “teste”; /* Isto é um comentário com mais
de uma linha, mas não funciona correctamente ?>
*/
<?
echo “teste”; /* Isto é um comentário com mais
de uma linha que funciona correctamente
*/
?>



Os primeiros Scripts

Neste exemplo, criei um script com uma saída simples, que servirá para testar se a
instalação foi feita correctamente:

<html>
<head><title>Brincar no PHP</title></head>
<body>
<?php
echo "Primeiro Script";
?>
</body>
</html>

Guarde o arquivo como “primeiro.php3” na pasta de documentos do Apache (ou o Web
Server escolhido). Abra o browser e insira o endereço “http://localhost/primeiro.php3”.
Verificar o código da fonte da página exibida, temos o seguinte:
<html>
<head><title>Brincar no PHP</title></head>
<body>
Primeiro Script
</body>
</html>

Isto mostra como o PHP funciona. O script é executado no servidor, fica disponível
para o utilizador apenas o resultado. Agora vamos escrever um script que produza
exactamente o mesmo resultado utilizando uma variável:

<html>
<head><title>Brincar no PHP</title></head>
<body>
<?php
$texto = "Primeiro Script";
echo $texto;
?>
</body>
</html>



Formulários HTML

Ao clicar no botão “Submit” um formulário HTML, as informações dos campos serão
enviadas ao servidor específico para que possa ser produzida uma resposta.
O PHP trata esses valores como variáveis, cujo nome é o nome do campo definido no
formulário.

O exemplo a seguir mostra isso, e mostra também como o código PHP pode ser
inserido em qualquer parte do código HTML:

<html>
<head><title>Brincar no PHP</title></head>
<body>
<?php
if ($texto != "")
echo "digitou "$texto"<br><br>";
?>
<form method=post action="<? echo $PATH_INFO; ?>">
<input type="text" name="texto" value="" size=10>
<br>
<input type="submit" name="sub" value="Enviar!">
</form>
</body>
</html>

Ao guardar o arquivo acima e carregá-lo no browser, o utilizador verá apenas um
formulário que contém um espaço para digitar o texto. Ao digitar um texto qualquer e
submeter o formulário, a resposta, é o mesmo arquivo PHP (indicado pela constante
$PATH_INFO, que retorna o nome do arquivo).
Isto acontece porque o código PHP testa o conteúdo da variável “$texto”. Inicialmente
é uma string vazia. Quando algum texto é digitado no formulário e submetido, o PHP
passa a tratá-lo como uma variável. Como no formulário o campo possui o nome
“texto”, a variável com seu conteúdo será “$texto”. Assim, no próximo teste o valor da
variável será diferente de uma string vazia, e o PHP imprime um texto antes do
formulário.


Interagir com o Browser

A Linguagem PHP também permite interagir com informações do browser
automaticamente.
Por exemplo, o script a seguir mostra informações sobre o browser do utilizador.

<html>
<head><title>Brincar no PHP</title></head>
<body>
<? echo $HTTP_USER_AGENT; ?>
</body>
</html>

Observe que o resultado mostra características de cada browser, como a versão, e no
caso do Communicator até o idioma (“en”). Com isso, se criar uma página com
recursos disponíveis no Internet Explorer, por exemplo, pode esconder o código dos
outros browsers, com um código semelhante no seguinte exemplo:

<html>
<head><title>Brincar no PHP</title></head>
<body>
<?
if (strpos($HTTP_USER_AGENT,"MSIE 5") != 0) {
echo "Use Internet Explorer";
} else {
echo "Não use Internet Explorer";
}
?>
</body>
</html>

Neste exemplo, será apenas apresentado um texto informando se está a ser utilizado o
Microsoft Internet Explorer ou não, mas para outras funções poderia ser utilizado algo
parecido. É bom notar o aparecimento de mais uma função no código anterior: strpos
(string1,string2). Esta função atrasa a posição da primeira apresentação de string2 em
string1, a partir do zero, e não atrasa valor algum se não ocorrer. Assim, para testar se
a string “$HTTP_USER_AGENT” apresenta string “MSIE”, basta testar se os strpos
devolvem algum valor.
Acesso na Base de dados

Neste documento todos os exemplos referentes ao acesso na base de dados utilizarão
a gestão de base de dados MySQL. Para interagir com uma base de dados SQL existem
três comandos básicos que devem ser utilizados:

    Faz a ligação com o servidor de base de dados;
    Selecciona a base de dados a ser utilizada;
    Executa uma “query” SQL.


Ligação com o servidor

A ligação com o servidor de base de dados mySQL em PHP é feita através do comando
“mysql_connect”, que tem a seguinte operação:

int mysql_connect(string /*host [:porta]*/ , string /*login*/ , string /*senha*/ );

Os parâmetros são bastante simples:

    Endereço do servidor (host);
    Nome do usuário (login);
    A senha para a ligação.

A função atrasa um valor inteiro, que é o identificador da ligação estabelecida e deverá
ser armazenado numa variável para ser utilizado depois.
No exemplo, temos como servidor de base de dados a mesma máquina que funciona o
servidor http, como login o utilizador “root” e senha “phppwd”:

$ligacao = mysql_connect(“localhost”, “root”, “phppwd”);

Assim, se a ligação for bem sucedida o identificador da ligação fica armazenado na
variável “$ligação”.

Selecção na base de dados

Uma vez conectado, é preciso seleccionar a base de dados existente no servidor com o
qual queiramos trabalhar. Isso é feito através da função int mysql_select_db, que
possui a seguinte sintaxe:

int mysql_select_db(string /*nome_base*/, int /*ligacao*/ );

O valor de retorno é 0 se o comando falhar, é 1 em caso de sucesso. O nome da base
de dados a seleccionar é o primeiro parâmetro fornecido, seguido pelo identificador da
ligação. Recomenda-se sempre explicitar esse valor, para facilitar a legibilidade do
código. No exemplo, a base de dados a ser seleccionada possui o nome “ged”:

mysql_select_db(“ged”, $ligação);

Após a execução desse comando, qualquer consulta executada para aquela ligação
utilizará a base de dados seleccionada.
Execução de queries SQL

Após estabelecida a ligação e seleccionada a base de dados a ser utilizada, quase toda
a interacção com o servidor mySQL pode ser feita através de consultas escritas em
SQL (Structured Query Language), com o comando mysql_query, que utiliza o
seguinte:

int mysql_query(string consulta, int [ligacao] );


O valor de retorno é 0, se falhar é 1 em caso de sucesso. Sucesso aqui significa que a
consulta está sintacticamente correcta e foi executada no servidor.
Nenhuma informação sobre o resultado é retornada deste comando, ou até mesmo se
o resultado é o esperado. No caso de a consulta ser um comando SELECT, o valor de
retorno é um valor interno que identifica o resultado, que poderá ser tratado com a
função mysql_result() e outras. A string query não deve conter ponto-e-vírgula no final
do comando, e o identificador da ligação é opcional. Vou criar uma tabela como
Exemplo:

$cria = “CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY KEY, nome
CHAR(40), email CHAR(50))”;

       mysql_query($cria, $ligacao);


Agora como ficou o código completo para executar uma query SQL numa base de
dados mySQL, com um exemplo de uma tabela:

      $conexao = mysql_connect(“localhost”, “root”, “phppwd”);
mysql_select_db(“ged”, $conexao);

       $cria = “CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY
KEY, nome CHAR(40), email CHAR(50))”;

       $insere1 = “INSERT INTO exemplo (nome,email) VALUES (“Andre
Santos”,”santos@live.net”);

       $insere2 = “INSERT          INTO     exemplo   (nome,email)   VALUES    (“Tiago
Lopes”,”lopes@hotmail.com”);

        $insere3 = “INSERT INTO exemplo (nome,email) VALUES (“Guilherme
Batista”,”g.b@gmail.pt”);

       $insere4 = “INSERT INTO exemplo (nome,email) VALUES (“Bill
Gattes”,”president@microsoft.com”);

mysql_query($cria, $ligacao);
mysql_query($insere1, $ligacao);
mysql_query($insere2, $igacao);
mysql_query($insere3, $igacao);
mysql_query($insere4, $igacao);
Query SELECT

Ao executar uma query SQL SELECT através do comando mysql_query, o identificador
do resultado deve ser armazenado numa variável que pode ser tratada de diversas
formas. Duas maneiras interessantes de fazer, usamos o comando mysql_result e o
comando mysql_fetch_row, respectivamente. O comando mysql_result tem a seguinte
forma:

int mysql_result(int resultado, int linha, mixed [campo]);

Onde o resultado é o identificador do resultado, obtido com o retorno da função
mysql_query, linha específica, já que uma query SELECT pode retornar diversas tuplas,
e o campo é o identificador do campo a ser exibido, sendo o tipo descrito como mixed
pela possibilidade de ser de diversos tipos (neste caso, inteiro ou string). Visualize-mos
um exemplo utilizando a tabela criada anteriormente:

        $consulta = “SELECT nome, email FROM exemplo WHERE email LIKE
„santos‟”;

       $resultado = mysql_query($consulta, $ligacao);

printf("Nome: ", mysql_result($resultado,0,"nome"), “<br>n”);
printf("e-mail: ", mysql_result($resultado,0,"email"),“<br>”);

Com o exemplo acima, o resultado é:

Nome: André Santos<br>
E-mail: santos@live.net<br>

É importante notar que a utilização desta função é complicada, já que no caso de um
resultado com várias linhas é preciso controlar o número de linhas para tratá-las
(pode-se utilizar a função mysql_num_rows (int resultado), que retorna o número de
linhas de um resultado), e no caso de uma alteração no nome do campo é preciso
alterar também a maneira de “tratar”. Por isso é aconselhável que se use uma outra
função, como por exemplo mysql_fetch_row, que possui a seguinte sintaxe:

array mysql_fetch_row(int result);

A variável do resultado é o identificador da memória de resultados, obtido como
retorno da função mysql_query. O resultado produzido por esta função é de retirar a
primeira linha da memória de resultados, e se houver, é colocá-la num array. Assim
torna-se fácil tratar um resultado com várias linhas, e sem utilizar os nomes dos
campos na rotina do resultado:
$consulta = “SELECT nome, email FROM exemplo”;

$resultado = mysql_query($consulta, $ligacao);

echo "<table border=1>n";
echo "<tr><td>Nome</td><td>e-mail</tr>n";
while ($linha = mysql_fetch_row($resultado)) {
       printf("<tr><td>$linha[0]</td>”);
       printf("<td>$linha[1]</td></tr>”);
}
echo "</table>n";



O código acima irá imprimir todos os registos da tabela, exemplo numa tabela HTML.
Se o programador desejar “saltar” alguma(s) linha(s) do resultado, poderá utilizar a
função mysql_data_seek, que tem por objectivo definir qual será a próxima linha da
memória de resultados a ser imprimida. A sintaxe é:

int mysql_data_seek(int resultado, int linha);

Se o resultado do identificador é o resultado, a linha ou numero da linha. Retorna 0 em
caso de falha, é um valor diferente de zero em caso de sucesso.
Existem diversas funções para o tratamento de resultados, que armazenam as linhas
em arrays e objectos, assim como outras funções para administrar a base de dados,
mas como este documento trata-se de uma introdução, inicialmente não apresentará
tópicos avançados.
Conclusão
A linguagem PHP é uma linguagem de programação de domínio específico, ou seja,
estende-se a um campo de actuação que é o WEB, embora tenha variáveis como o
PHP-GTK. O Objectivo principal é implementar soluções WEB rápidas, simples e
eficientes.
Referências
Sites:

http://pt.wikipedia.org/wiki

http://www.apostilando.com

Mais conteúdo relacionado

Mais procurados

HTML - Aula 01 - Estrutura básica e tags básicas no html
HTML - Aula 01 - Estrutura básica e tags básicas no htmlHTML - Aula 01 - Estrutura básica e tags básicas no html
HTML - Aula 01 - Estrutura básica e tags básicas no htmlTiago Luiz Ribeiro da Silva
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoLuiz Junior
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento webRodrigo Rodrigues
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetosCleyton Ferrari
 
01 Introdução à programação web
01 Introdução à programação web01 Introdução à programação web
01 Introdução à programação webCentro Paula Souza
 
HTML+&+CSS++Fundamentos.pdf
HTML+&+CSS++Fundamentos.pdfHTML+&+CSS++Fundamentos.pdf
HTML+&+CSS++Fundamentos.pdfCesar Braz
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScriptCarlos Eduardo Kadu
 
Linguagens de programação
Linguagens de programaçãoLinguagens de programação
Linguagens de programaçãoessa
 
Git e Github para Iniciantes
Git e Github para IniciantesGit e Github para Iniciantes
Git e Github para IniciantesLoiane Groner
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Bruno Grange
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01 Léo Dias
 
DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScriptThiago Poiani
 

Mais procurados (20)

HTML - Aula 01 - Estrutura básica e tags básicas no html
HTML - Aula 01 - Estrutura básica e tags básicas no htmlHTML - Aula 01 - Estrutura básica e tags básicas no html
HTML - Aula 01 - Estrutura básica e tags básicas no html
 
Curso de PHP Básico ao Avançado
Curso de PHP Básico ao AvançadoCurso de PHP Básico ao Avançado
Curso de PHP Básico ao Avançado
 
PHP - Introdução
PHP - IntroduçãoPHP - Introdução
PHP - Introdução
 
Introdução sobre desenvolvimento web
Introdução sobre desenvolvimento webIntrodução sobre desenvolvimento web
Introdução sobre desenvolvimento web
 
Html
HtmlHtml
Html
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
01 Introdução à programação web
01 Introdução à programação web01 Introdução à programação web
01 Introdução à programação web
 
Curso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTMLCurso de Desenvolvimento Web - Módulo 01 - HTML
Curso de Desenvolvimento Web - Módulo 01 - HTML
 
HTML+&+CSS++Fundamentos.pdf
HTML+&+CSS++Fundamentos.pdfHTML+&+CSS++Fundamentos.pdf
HTML+&+CSS++Fundamentos.pdf
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
 
Aula02 - JavaScript
Aula02 - JavaScriptAula02 - JavaScript
Aula02 - JavaScript
 
Linguagens de programação
Linguagens de programaçãoLinguagens de programação
Linguagens de programação
 
Front End x Back End
Front End x Back EndFront End x Back End
Front End x Back End
 
Aula01-JavaScript
Aula01-JavaScriptAula01-JavaScript
Aula01-JavaScript
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Git e Github para Iniciantes
Git e Github para IniciantesGit e Github para Iniciantes
Git e Github para Iniciantes
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)
 
Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01   Curso de HTML5 - Aula 01
Curso de HTML5 - Aula 01
 
Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
 
DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScript
 

Destaque

Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHPPaulo Dayvson
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1Norivan Oliveira
 
Apresentação php
Apresentação phpApresentação php
Apresentação phpwilliameier
 
Curso Desenvolvimento WEB com PHP - PHP (parte 1)
Curso Desenvolvimento WEB com PHP - PHP (parte 1)Curso Desenvolvimento WEB com PHP - PHP (parte 1)
Curso Desenvolvimento WEB com PHP - PHP (parte 1)Willian Magalhães
 
Curso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoCurso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoNorton Guimarães
 
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
 
PHP Day - PHP para iniciantes
PHP Day - PHP para iniciantesPHP Day - PHP para iniciantes
PHP Day - PHP para iniciantesAlmir Mendes
 
Exercicios Php
Exercicios PhpExercicios Php
Exercicios Phpsofteam
 
Instalando Drupal, Começando do Começo
Instalando Drupal, Começando do ComeçoInstalando Drupal, Começando do Começo
Instalando Drupal, Começando do Começosauloamui
 
Novas Funcionalidade no PHP 5.3
Novas Funcionalidade no PHP 5.3Novas Funcionalidade no PHP 5.3
Novas Funcionalidade no PHP 5.3Douglas V. Pasqua
 
Ranking das 10 (dez) coisas que as pessoas mais fazem na internet
Ranking das 10 (dez) coisas que as pessoas mais fazem na internetRanking das 10 (dez) coisas que as pessoas mais fazem na internet
Ranking das 10 (dez) coisas que as pessoas mais fazem na internetGaabi0
 

Destaque (20)

Comandos gerais do PHP
Comandos gerais do PHPComandos gerais do PHP
Comandos gerais do PHP
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
 
Apresentação php
Apresentação phpApresentação php
Apresentação php
 
Curso Desenvolvimento WEB com PHP - PHP (parte 1)
Curso Desenvolvimento WEB com PHP - PHP (parte 1)Curso Desenvolvimento WEB com PHP - PHP (parte 1)
Curso Desenvolvimento WEB com PHP - PHP (parte 1)
 
Introdução a php
Introdução a phpIntrodução a php
Introdução a php
 
Curso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP BásicoCurso Linguagem de Programação I - PHP Básico
Curso Linguagem de Programação I - PHP Básico
 
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
 
PHP Day - PHP para iniciantes
PHP Day - PHP para iniciantesPHP Day - PHP para iniciantes
PHP Day - PHP para iniciantes
 
Exercicios Php
Exercicios PhpExercicios Php
Exercicios Php
 
A Linguagem Php
A Linguagem PhpA Linguagem Php
A Linguagem Php
 
Introduction to PHP
Introduction to PHPIntroduction to PHP
Introduction to PHP
 
PHP - Funções
PHP - FunçõesPHP - Funções
PHP - Funções
 
Linguagem html
Linguagem htmlLinguagem html
Linguagem html
 
PHP 5.3 - Funções
PHP 5.3 - FunçõesPHP 5.3 - Funções
PHP 5.3 - Funções
 
Instalando Drupal, Começando do Começo
Instalando Drupal, Começando do ComeçoInstalando Drupal, Começando do Começo
Instalando Drupal, Começando do Começo
 
Novas Funcionalidade no PHP 5.3
Novas Funcionalidade no PHP 5.3Novas Funcionalidade no PHP 5.3
Novas Funcionalidade no PHP 5.3
 
Curso de Introdução - PHP
Curso de Introdução - PHPCurso de Introdução - PHP
Curso de Introdução - PHP
 
Security & PHP
Security & PHPSecurity & PHP
Security & PHP
 
Ranking das 10 (dez) coisas que as pessoas mais fazem na internet
Ranking das 10 (dez) coisas que as pessoas mais fazem na internetRanking das 10 (dez) coisas que as pessoas mais fazem na internet
Ranking das 10 (dez) coisas que as pessoas mais fazem na internet
 
Java Script
Java ScriptJava Script
Java Script
 

Semelhante a Linguagem PHP (20)

Guia php
Guia phpGuia php
Guia php
 
Aula 01 introdução ao php
Aula 01   introdução ao phpAula 01   introdução ao php
Aula 01 introdução ao php
 
Artigo de php
Artigo de phpArtigo de php
Artigo de php
 
Módulo de php
Módulo de phpMódulo de php
Módulo de php
 
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
 
Curso de php do básico ao avançado
Curso de php do básico ao avançadoCurso de php do básico ao avançado
Curso de php do básico ao avançado
 
PHP 5.3 - Introdução
PHP 5.3 - IntroduçãoPHP 5.3 - Introdução
PHP 5.3 - Introdução
 
Desenvolvimento de Software I - USBWEBSERVER - PHP
Desenvolvimento de Software I - USBWEBSERVER - PHPDesenvolvimento de Software I - USBWEBSERVER - PHP
Desenvolvimento de Software I - USBWEBSERVER - PHP
 
Tema 1 | Introdução a PHP
Tema 1 | Introdução a PHPTema 1 | Introdução a PHP
Tema 1 | Introdução a PHP
 
Pho Aula 02
Pho Aula 02Pho Aula 02
Pho Aula 02
 
PHP Presente e Futuro
PHP Presente e FuturoPHP Presente e Futuro
PHP Presente e Futuro
 
Mini Curso de PHP
Mini Curso de PHPMini Curso de PHP
Mini Curso de PHP
 
Manual PHP
Manual PHPManual PHP
Manual PHP
 
Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01Serversidephp pptx2-120418140114-phpapp01
Serversidephp pptx2-120418140114-phpapp01
 
PW01 - Introdução a programação em PHPv7
PW01 - Introdução a programação em PHPv7PW01 - Introdução a programação em PHPv7
PW01 - Introdução a programação em PHPv7
 
Php
PhpPhp
Php
 
Php
PhpPhp
Php
 
Seminário: PHP
Seminário: PHPSeminário: PHP
Seminário: PHP
 
Desenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetosDesenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetos
 
Introdução ao PHP5
Introdução ao PHP5Introdução ao PHP5
Introdução ao PHP5
 

Linguagem PHP

  • 1.
  • 2. ESCOLA SECUNDÁRIA DE SANTO ANDRÉ Curso e Turma: Instalação e Manutenção de Sistemas Informáticos, EFA 4S Disciplina: Programação e Web Nome do Trabalho: “Linguagem PHP" Nome do Aluno: Tiago Lopes Nome do Professor: Guilherme Batista Data do Trabalho: 17-12-2009
  • 3. Índice Introdução Pag.1 Linguagem PHP Pag.2 Como surgiu a Linguagem PHP Pag.3 PHP 3 Pag.3 PHP 4 Pag.3 PHP 5 Pag.3 O Código PHP Pag.4 Separador de instruções Pag.4 Nomes de variáveis Pag.4 Comentários Pag.5 Os primeiros Scripts Pag.5 e 6 Formulários HTML Pag.6 e 7 Interagir com o Browser Pag.7 Acesso na Base de dados Pag.8 Ligação com o servidor Pag.8 Selecção na Base de dados Pag.9 Execução de queries SQL Pag.10 Query SELECT Pag.11 e 12 Conclusão Pag.13 Referências Pag.14
  • 4. Introdução O trabalho consiste numa pesquisa sobre a Linguagem PHP – uma linguagem de script para a construção de Homepages dinâmicas, que é executada no servidor http. PHP também tem como uma das características mais importantes o suporte a um grande número de base de dados.
  • 5. Linguagem PHP PHP (um acrónimo recursivo para "PHP: Hypertext Preprocessor") é uma linguagem de programação interpretada, livre e muito utilizada para gerar o conteúdo dinâmico na WEB, sendo ela interpretada via Browser. Basicamente, qualquer coisa pode ser feita pelo programa CGI, pode também ser feita com PHP, como colectar dados de um formulário, gerar páginas dinamicamente ou enviar e receber cookies. PHP também tem como uma das características mais importantes o suporte a um grande número de base de dados, como por exemplo: dBase, Interbase, mSQL, mySQL, Oracle, Sybase, PostgreSQL entre outros. Construir uma página baseada em base de dados torna-se uma tarefa extremamente simples com PHP. Além disso, PHP tem suporte a outros serviços através de protocolos como IMAP, SNMP, NNTP, POP3 e, logicamente, HTTP. Ainda é possível abrir sockets e interagir com outros protocolos.
  • 6. Como surgiu a Linguagem PHP? A Linguagem PHP surgiu por volta de 1994, com um pacotes de programas CGI criados por Rasmus Lerdof, (Personal Home Page Tools), para substituir um conjunto de scripts Perl, que usava no desenvolvimento de sua página pessoal. Em 1997 foi lançado o novo pacotes da Linguagem PHP com o nome de PHP/FI, com a ferramenta Forms Interpreter, um interpretador de comandos SQL. Trata-se de uma linguagem extremamente modularizada, o que a torna ideal para instalação e uso em servidores Web. Diversos módulos são criados no repositório de extensões PECL (PHP Extension Community Library) e alguns desses módulos são introduzidos como padrão em novas versões da linguagem. Pode ser, dependendo da configuração do servidor, embarcada no código HTML. Existem versões do PHP disponíveis para os seguintes sistemas operacionais: Windows, Linux, FreeBSD, Mac OS, OS/2, AS/400, Novell Netware, RISC OS, AIX, IRIX e Solaris. PHP 3 Mais tarde, Zeev Suraski desenvolveu o analisador do PHP 3 que contava com o primeiro recurso de orientação dos objectos, que dava para alcançar alguns pacotes. Tinha herança e dava aos desenvolvedores a possibilidade de implementar propriedades e métodos funcionais. PHP 4 Pouco depois, Zeev Suraski e Andi Gutmans, criaram o PHP 4, abandonando o PHP 3, dando mais força à máquina da linguagem e maior número de recursos de orientação a objectos. O problema que apresentou o PHP 4 foi a criação de cópias de objectos, pois a linguagem ainda não trabalhava com apontadores ou handlers, como são as linguagens Java , Small talk entre outras. O problema foi resolvido na versão actual do PHP, a versão 5, que já trabalha com handlers. Caso se copie um objecto, se copiarmos um apontador, se fizermos alguma alteração na versão original do objecto, todas sofrem a alteração, o que não acontecia na Linguagem PHP 4. PHP 5 Em Junho de 2004 foi lançada a versão PHP 5, introduzindo um novo modelo de orientação a objecto, incluindo a reformulação dos construtores e adição de destrutores, visibilidade de acesso, abstracção de objecto e interfaces de objectos. O tratamento de objectos do PHP foi completamente reescrito, permitindo um melhor desempenho e com mais vantagens. Enquanto na versão anterior era preciso muito esforço para compreender à orientação a objectos e aos padrões de projectos (alguns não eram possíveis), o PHP 5 veio para acabar essa deficiência. Ainda sofre nesse sentido, contudo, por problemas devido a ser uma linguagem de ripagem fraca.
  • 7. O código PHP O código PHP fica introduzido no próprio HTML. O interpretador identifica quando um código é PHP pelas seguintes “tags”: <?php comandos ?> <script language=”php”> comandos </script> <? comandos ?> <% comandos %> O tipo de “tags” mais utilizado é o terceiro, que consiste em uma “abreviação” do primeiro. Para utilizá-lo, é necessário habilitar a opção “short-tags” na configuração do PHP. O último tipo serve para facilitar o uso por programadores acostumados à sintaxe de ASP. Para utilizá-lo também é necessário habilitá-lo no PHP, através do arquivo de configuração “php.ini”. Separador de instruções Entre cada instrução em PHP é preciso utilizar o ponto-e-vírgula, assim como em C, Perl e outras linguagens mais conhecidas. Na última instrução do bloco de script não é necessário o uso do ponto-e-vírgula, mas por questões estéticas recomenda-se sempre. Nomes de variáveis A variável em PHP tem um nome composto pelo carácter $ e uma string, que deve iniciar por uma letra ou um carácter “_”. PHP é case sensitive, ou seja, as variáveis $vivas e $VIVAS são diferentes. Por isso é preciso ter muito cuidado ao definir os nomes das variáveis. Evitar sempre os nomes em maiúsculas, como podemos ver mais á frente, o PHP já possui algumas variáveis pré-definidas cujos nomes são formados por letras maiúsculas.
  • 8. Comentários Comentários de uma linha: Introduzir um comentário até ao final da linha ou até ao final do bloco de código PHP. Pode ser designado pelo carácter “#” ou por duas barras (//). Exemplo: <? echo “teste”; #isto é um teste?> <? echo “teste”; //este teste é similar ao anterior?> Comentários de uma ou mais linhas: Podemos introduzir os caracteres “/*” para o início do bloco e “*/” para o final do comentário. Exemplos: <? echo “teste”; /* Isto é um comentário com mais de uma linha, mas não funciona correctamente ?> */ <? echo “teste”; /* Isto é um comentário com mais de uma linha que funciona correctamente */ ?> Os primeiros Scripts Neste exemplo, criei um script com uma saída simples, que servirá para testar se a instalação foi feita correctamente: <html> <head><title>Brincar no PHP</title></head> <body> <?php echo "Primeiro Script"; ?> </body> </html> Guarde o arquivo como “primeiro.php3” na pasta de documentos do Apache (ou o Web Server escolhido). Abra o browser e insira o endereço “http://localhost/primeiro.php3”. Verificar o código da fonte da página exibida, temos o seguinte:
  • 9. <html> <head><title>Brincar no PHP</title></head> <body> Primeiro Script </body> </html> Isto mostra como o PHP funciona. O script é executado no servidor, fica disponível para o utilizador apenas o resultado. Agora vamos escrever um script que produza exactamente o mesmo resultado utilizando uma variável: <html> <head><title>Brincar no PHP</title></head> <body> <?php $texto = "Primeiro Script"; echo $texto; ?> </body> </html> Formulários HTML Ao clicar no botão “Submit” um formulário HTML, as informações dos campos serão enviadas ao servidor específico para que possa ser produzida uma resposta. O PHP trata esses valores como variáveis, cujo nome é o nome do campo definido no formulário. O exemplo a seguir mostra isso, e mostra também como o código PHP pode ser inserido em qualquer parte do código HTML: <html> <head><title>Brincar no PHP</title></head> <body> <?php if ($texto != "") echo "digitou "$texto"<br><br>"; ?> <form method=post action="<? echo $PATH_INFO; ?>"> <input type="text" name="texto" value="" size=10> <br> <input type="submit" name="sub" value="Enviar!"> </form> </body> </html> Ao guardar o arquivo acima e carregá-lo no browser, o utilizador verá apenas um formulário que contém um espaço para digitar o texto. Ao digitar um texto qualquer e submeter o formulário, a resposta, é o mesmo arquivo PHP (indicado pela constante $PATH_INFO, que retorna o nome do arquivo).
  • 10. Isto acontece porque o código PHP testa o conteúdo da variável “$texto”. Inicialmente é uma string vazia. Quando algum texto é digitado no formulário e submetido, o PHP passa a tratá-lo como uma variável. Como no formulário o campo possui o nome “texto”, a variável com seu conteúdo será “$texto”. Assim, no próximo teste o valor da variável será diferente de uma string vazia, e o PHP imprime um texto antes do formulário. Interagir com o Browser A Linguagem PHP também permite interagir com informações do browser automaticamente. Por exemplo, o script a seguir mostra informações sobre o browser do utilizador. <html> <head><title>Brincar no PHP</title></head> <body> <? echo $HTTP_USER_AGENT; ?> </body> </html> Observe que o resultado mostra características de cada browser, como a versão, e no caso do Communicator até o idioma (“en”). Com isso, se criar uma página com recursos disponíveis no Internet Explorer, por exemplo, pode esconder o código dos outros browsers, com um código semelhante no seguinte exemplo: <html> <head><title>Brincar no PHP</title></head> <body> <? if (strpos($HTTP_USER_AGENT,"MSIE 5") != 0) { echo "Use Internet Explorer"; } else { echo "Não use Internet Explorer"; } ?> </body> </html> Neste exemplo, será apenas apresentado um texto informando se está a ser utilizado o Microsoft Internet Explorer ou não, mas para outras funções poderia ser utilizado algo parecido. É bom notar o aparecimento de mais uma função no código anterior: strpos (string1,string2). Esta função atrasa a posição da primeira apresentação de string2 em string1, a partir do zero, e não atrasa valor algum se não ocorrer. Assim, para testar se a string “$HTTP_USER_AGENT” apresenta string “MSIE”, basta testar se os strpos devolvem algum valor.
  • 11. Acesso na Base de dados Neste documento todos os exemplos referentes ao acesso na base de dados utilizarão a gestão de base de dados MySQL. Para interagir com uma base de dados SQL existem três comandos básicos que devem ser utilizados:  Faz a ligação com o servidor de base de dados;  Selecciona a base de dados a ser utilizada;  Executa uma “query” SQL. Ligação com o servidor A ligação com o servidor de base de dados mySQL em PHP é feita através do comando “mysql_connect”, que tem a seguinte operação: int mysql_connect(string /*host [:porta]*/ , string /*login*/ , string /*senha*/ ); Os parâmetros são bastante simples:  Endereço do servidor (host);  Nome do usuário (login);  A senha para a ligação. A função atrasa um valor inteiro, que é o identificador da ligação estabelecida e deverá ser armazenado numa variável para ser utilizado depois. No exemplo, temos como servidor de base de dados a mesma máquina que funciona o servidor http, como login o utilizador “root” e senha “phppwd”: $ligacao = mysql_connect(“localhost”, “root”, “phppwd”); Assim, se a ligação for bem sucedida o identificador da ligação fica armazenado na variável “$ligação”. Selecção na base de dados Uma vez conectado, é preciso seleccionar a base de dados existente no servidor com o qual queiramos trabalhar. Isso é feito através da função int mysql_select_db, que possui a seguinte sintaxe: int mysql_select_db(string /*nome_base*/, int /*ligacao*/ ); O valor de retorno é 0 se o comando falhar, é 1 em caso de sucesso. O nome da base de dados a seleccionar é o primeiro parâmetro fornecido, seguido pelo identificador da ligação. Recomenda-se sempre explicitar esse valor, para facilitar a legibilidade do código. No exemplo, a base de dados a ser seleccionada possui o nome “ged”: mysql_select_db(“ged”, $ligação); Após a execução desse comando, qualquer consulta executada para aquela ligação utilizará a base de dados seleccionada.
  • 12. Execução de queries SQL Após estabelecida a ligação e seleccionada a base de dados a ser utilizada, quase toda a interacção com o servidor mySQL pode ser feita através de consultas escritas em SQL (Structured Query Language), com o comando mysql_query, que utiliza o seguinte: int mysql_query(string consulta, int [ligacao] ); O valor de retorno é 0, se falhar é 1 em caso de sucesso. Sucesso aqui significa que a consulta está sintacticamente correcta e foi executada no servidor. Nenhuma informação sobre o resultado é retornada deste comando, ou até mesmo se o resultado é o esperado. No caso de a consulta ser um comando SELECT, o valor de retorno é um valor interno que identifica o resultado, que poderá ser tratado com a função mysql_result() e outras. A string query não deve conter ponto-e-vírgula no final do comando, e o identificador da ligação é opcional. Vou criar uma tabela como Exemplo: $cria = “CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY KEY, nome CHAR(40), email CHAR(50))”; mysql_query($cria, $ligacao); Agora como ficou o código completo para executar uma query SQL numa base de dados mySQL, com um exemplo de uma tabela: $conexao = mysql_connect(“localhost”, “root”, “phppwd”); mysql_select_db(“ged”, $conexao); $cria = “CREATE TABLE exemplo (codigo INT AUTO_INCREMENT PRIMARY KEY, nome CHAR(40), email CHAR(50))”; $insere1 = “INSERT INTO exemplo (nome,email) VALUES (“Andre Santos”,”santos@live.net”); $insere2 = “INSERT INTO exemplo (nome,email) VALUES (“Tiago Lopes”,”lopes@hotmail.com”); $insere3 = “INSERT INTO exemplo (nome,email) VALUES (“Guilherme Batista”,”g.b@gmail.pt”); $insere4 = “INSERT INTO exemplo (nome,email) VALUES (“Bill Gattes”,”president@microsoft.com”); mysql_query($cria, $ligacao); mysql_query($insere1, $ligacao); mysql_query($insere2, $igacao); mysql_query($insere3, $igacao); mysql_query($insere4, $igacao);
  • 13. Query SELECT Ao executar uma query SQL SELECT através do comando mysql_query, o identificador do resultado deve ser armazenado numa variável que pode ser tratada de diversas formas. Duas maneiras interessantes de fazer, usamos o comando mysql_result e o comando mysql_fetch_row, respectivamente. O comando mysql_result tem a seguinte forma: int mysql_result(int resultado, int linha, mixed [campo]); Onde o resultado é o identificador do resultado, obtido com o retorno da função mysql_query, linha específica, já que uma query SELECT pode retornar diversas tuplas, e o campo é o identificador do campo a ser exibido, sendo o tipo descrito como mixed pela possibilidade de ser de diversos tipos (neste caso, inteiro ou string). Visualize-mos um exemplo utilizando a tabela criada anteriormente: $consulta = “SELECT nome, email FROM exemplo WHERE email LIKE „santos‟”; $resultado = mysql_query($consulta, $ligacao); printf("Nome: ", mysql_result($resultado,0,"nome"), “<br>n”); printf("e-mail: ", mysql_result($resultado,0,"email"),“<br>”); Com o exemplo acima, o resultado é: Nome: André Santos<br> E-mail: santos@live.net<br> É importante notar que a utilização desta função é complicada, já que no caso de um resultado com várias linhas é preciso controlar o número de linhas para tratá-las (pode-se utilizar a função mysql_num_rows (int resultado), que retorna o número de linhas de um resultado), e no caso de uma alteração no nome do campo é preciso alterar também a maneira de “tratar”. Por isso é aconselhável que se use uma outra função, como por exemplo mysql_fetch_row, que possui a seguinte sintaxe: array mysql_fetch_row(int result); A variável do resultado é o identificador da memória de resultados, obtido como retorno da função mysql_query. O resultado produzido por esta função é de retirar a primeira linha da memória de resultados, e se houver, é colocá-la num array. Assim torna-se fácil tratar um resultado com várias linhas, e sem utilizar os nomes dos campos na rotina do resultado:
  • 14. $consulta = “SELECT nome, email FROM exemplo”; $resultado = mysql_query($consulta, $ligacao); echo "<table border=1>n"; echo "<tr><td>Nome</td><td>e-mail</tr>n"; while ($linha = mysql_fetch_row($resultado)) { printf("<tr><td>$linha[0]</td>”); printf("<td>$linha[1]</td></tr>”); } echo "</table>n"; O código acima irá imprimir todos os registos da tabela, exemplo numa tabela HTML. Se o programador desejar “saltar” alguma(s) linha(s) do resultado, poderá utilizar a função mysql_data_seek, que tem por objectivo definir qual será a próxima linha da memória de resultados a ser imprimida. A sintaxe é: int mysql_data_seek(int resultado, int linha); Se o resultado do identificador é o resultado, a linha ou numero da linha. Retorna 0 em caso de falha, é um valor diferente de zero em caso de sucesso. Existem diversas funções para o tratamento de resultados, que armazenam as linhas em arrays e objectos, assim como outras funções para administrar a base de dados, mas como este documento trata-se de uma introdução, inicialmente não apresentará tópicos avançados.
  • 15. Conclusão A linguagem PHP é uma linguagem de programação de domínio específico, ou seja, estende-se a um campo de actuação que é o WEB, embora tenha variáveis como o PHP-GTK. O Objectivo principal é implementar soluções WEB rápidas, simples e eficientes.