Você está na página 1de 46

Tec.

Web
PHP & MySQL
Sumário
 O que é o PHP?
 Por que PHP?
 A História do PHP
 A licença do PHP
 O PHP é multiplataforma
 O PHP não é baseado em tags
 O PHP é aberto
Sumário Cont.
 Criação de script Web do lado servidor
 Introdução ao PHP
 Instalando o PHP
 Adicionando PHP à HTML
 Ferramentas de Desenvolvimento
O que é o PHP?
 O PHP é uma linguagem para a criação
de scripts para a Web do lado servidor
embutidos em HTML;
 PHP significa: PHP: Hypertext
Preprocessor;
 O PHP tem pouco a ver com layout, ou
qualquer coisa relacionada à aparência de
uma página Web.
O que é o PHP? Cont.
 Alguém visualizando uma página de PHP
não será definitivamente capaz de afirmar
que ela não foi escrita em HTML, porque
o resultado final do PHP é HTML.
Por que PHP?
 É Livre;
 Tem o código aberto;
 Muito recursos;
 Diversas plataformas;
 É estável;
 Rápido;
 Fácil de aprender;
 Funciona bem com outros produtos.
A História do PHP
 Rasmus Lerdorf é o criador e a força propulsora
original por trás do PHP;

 A primeira parte do PHP foi desenvolvida para


sua utilização pessoal no final de 1994;

 No ano seguinte ele montou um pacote


chamado Personal Home Page Tools em
resposta à demanda de usuários;
A História do PHP Cont.
 A versão 4 do PHP apresentou a maioria das
funcionalidades necessárias para uma
programação eficiente e organizada;

 A forte aderência à Orientação a Objetos veio


com a versão 5.
 Zeev Suraski e Andi Gutmans(fundadores do
Zend.com) desenvolveram os analisadores de
sintaxe do PHP3 e do PHP4.
A licença do PHP
 A liberdade de código-fonte aberto e
software gratuito é garantida por um grupo
de esquemas de licença;
 Sendo o mais famoso a GPL (GNU
General Public License) ou "copyleft".
O PHP é multiplataforma
 O PHP executa nativamente em todas as
versões populares do UNIX e Windows;
 O PHP é compatível com os três mais
importantes servidores Web:
 Apache;
 IIS;

 Netscape;

 PWS;

 Etc.
O PHP é multiplataforma
Sistemas operacionais e servidores Web para o PHP
Variáveis Unix Windows

Versões AIX, A/UX, Digital Unix, FreeBSD, Windows NT/2000/XP


HP-UX, IRIX, Linux, Mac OS X,
Solaris, SunOS, Xenix e outros
Servidores Apache, Netscape IIS, PWS, Netscape,
da Web Apache, Omni
O PHP não é baseado em tags
 O PHP é uma linguagem de programação
real;
 O ColdFusion, em comparação, é constituído
por um conjunto de tags predefinidas, como
HTML;
 No PHP, você pode definir funções à vontade;
 No ColdFusion, você precisa utilizar tags
desenvolvidas por muitas pessoas ou
desenvolver suas próprias custom tags.
O PHP não é baseado em tags
 Como um brilhante membro da
comunidade do PHP uma vez disse: “O
ColdFusion torna fáceis coisas fáceis, e
impossíveis coisa mediamente difíceis”.
O PHP é aberto
 A cereja no meu Sundae;
 O PHP está em uma posição de máxima
flexibilidade porque, por assim dizer, tem
uma posição antiproprietária.
Criação de script Web do lado servidor

 HTML Estática
 O modelo mais simples de página Web é uma
página completamente estática baseada em texto e
inteiramente escrita em HTML.

Vamos fazer uma página HTML?


Criação de script Web do lado servidor

 O que significa Dinâmica? Tudo que vai


além da HTML básica;
 Os desenvolvedores Web utilizam o termo
para descrever funções do lado cliente e
do lado servidor;
 No cliente, o termos pode significar
apresentações multimídia ou páginas que
se atualizam automaticamente;
Criação de script Web do lado servidor
Cont.
 No servidor, o termo geralmente significa
que o conteúdo é montado
instantaneamente.
Introdução ao PHP

 Tags canônicas: <?php ?> esse método


não corre de ficar obsoleto;
 Tags abreviadas: <? ?> é menos
portável;
 Tags no estilo ASP: <% %>;
 Tags de script de HTML: <script
language=“PHP”> </script>
Adicionando PHP à HTML

 Hello World!!
<?php
print(“Hello World!!<br><br>\n”);
phpinfo();
?>
Instalando o PHP
 www.php.net;
 O pacote Appserv.
Ferramentas de Desenvolvimento
 Dreamweaver;
 PHPEditor;
 Bloco de Notas;
 Bluefish;
 Quanta.
Por que usar o MySQL?

 O MySQL é rápido e estável;


 Fácil de usar;
 Leve.
MySQL

 O MySQL está disponível através de um


esquema de licenciamento duplo, tanto
como um software livre quanto como
software comercial;
 Todo o software MySQL é disponibilizado
sob o licenciamento GNU General Public
License(GPL);
MySQL

 Ele suporta a grande maioria dos


recursos considerados importantes:
1. Transações;
2. Lock de registro;
3. Chaves estrangeiras;
4. Subconsultas;
5. Pesquisa full-text;
6. Store procedures;
7. Views, Triggers etc
MySQL

 Por que o MySQL ao invés de outro


banco de dados?
 Desempenho: Algumas vezes, isso significa que
os recursos são adicionados mais lentamente do
que os usuários gostariam.
• Esse procedimento tem assegurado que o MySQL
mantenha as suas características de rapidez e
eficiência.
MySQL

 Por que o MySQL ao invés de outro


banco de dados?
 Preço: A regra da MySQL AB é: “se você for livre,
nós também seremos; se for comercial, nós
também seremos”;
 Os maiores concorrentes do MySQL são produtos
comerciais, com esquemas de preço complexos
que dependem do uso pretendido.
MySQL

 Por que o MySQL ao invés de outro


banco de dados?
 O MySQL também é comparado com outros
bancos de dados de código aberto, como o
PostgreSQL e o Firebird;
 A diferença, nesse caso, é que o MySQL é o único
produto desenvolvido por uma empresa;
MySQL

 Por que o MySQL ao invés de outro


banco de dados?
 Estabilidade;
 Facilidade de uso;
MySQL

 Linguagem SQL:
 Foi desenvolvida pela IBM;
 Em 1986, o American National Standart
Institute(ANSI) publicou o padrão SQL para bancos
relacionais;
 SQL92(DDL,DML,DCL)
 Três categorias:
• DDL: Create, Alter e Drop;
• DML: Select, Insert, Delete e Update;
• DCL: Grant e Revoke. Seu objetivo é controlar o
acesso dos usuários aos dados.
Voltando ao PHP

 Variáveis
 Todas as variáveis no PHP têm um sinal de cifrão
($) na frente;
 São atribuídas com o sinal de “=“;
 Variáveis não precisam ser conhecidas antes da
atribuições;
 Exemplo: $idade = 28; //aproximadamente
Voltando ao PHP

 Saída
 A maioria das construções na linguagem PHP é
realizada silenciosamente – não imprimem nada na
saída
Voltando ao PHP

 Saída
 echo e print;
 Echo
• echo “exemplo de echo”;
• echo(“exemplo de echo”);
• Você também pode fornecer diversos argumentos à versão sem
parênteses de echo, separado por vírgulas, como em:
• echo "exemplo echo ", "outro exemplo.";
• A versão entre parênteses, porém não aceitará múltiplos argumentos:
• echo ("exemplo echo ", "outro exemplo.");
Voltando ao PHP

 Saída
 echo e print;
 print
• Diferentemente de echo, print somente aceita um argumento;
• Diferentemente de echo, print retorna uma valor que informa se a
instrução foi bem sucedida;
• Tanto echo como print são normalmente utilizados como argumentos
de string:
 print(“3.14875”);
 print(3.14875);
Voltando ao PHP

 Aspas simples versus aspas duplas


 print('teste linha \n\n\n toda linha');
 print("<br>teste \"linha \n\n\n toda linha");
Voltando ao PHP

 Aspas simples versus aspas duplas


 Aspas simples lêem e armazenam seus
caracteres literalmente:
 $literalmente=‘minha $variavel escondida!\\n’;
 Produz a saída no navegador:
 Minha $variavel escondida!\n
Voltando ao PHP

 Aspas simples versus aspas duplas


 Para inserir uma aspas simples(como um
apóstrofo) em uma string entre aspas simples,
“escape” a aspa simples com uma barra invertida:
 $literalmente=‘mike\’s homepage’;
Voltando ao PHP

 Expressões Regulares:
 São padrões que correspondem strings. Elas
são muito utilizadas para criar testes true/false
complexos em strings e também para extrair
substrings e fazer substituições complexas.
Voltando ao PHP

 Por que expressões regulares?


 As funções de comparação de strings e de
localização de substring como por exemplo
endereços web que iniciam com www., terminam
em .com e tem uma palavra alfabética em letras
minúsculas no meio.
Voltando ao PHP

Por exemplo, essas são as strings que queremos:


 ‘www.ibm.com’
 ‘www.zend.com’
E não as seguintes:
 ‘java.sun.com’
 ‘www.php.net’
 ‘www.IBM.com’
 ‘www. Qualquer coisa.com’
Voltando ao PHP

 Pensando um pouco, é óbvio que não há uma


maneira conveniente de utilizar comparação de string
e substring para construir o teste que queremos;
 Podemos testar a presença de www. e .com, mas é
difícil impor o que estaria acontecendo no meio delas;
 É para isto que expressões regulares são boas .
Voltando ao PHP

 Expressões regulares ou regex são padrões para


correspondência de string, com curingas especiais que
podem corresponder partes inteiras da string alvo;

 As expressões regulares no estilo POSIX descendem


da maquinaria de correspondência padrão da regex
utilizada em shells de linha de comando do UNIX.
Voltando ao PHP

Um exemplo de regex no estilo POSIX


 Nossa expressão escolhida é:
 ^www\.[a-z]+\.com$
Voltando ao PHP

^www\.[a-z]+\.com$

1. símbolo ‘^’, que informa que a parte www deve estar no início da string;
2. o ponto (.), precedido por barras invertidas que informa que realmente
queremos um ponto, não o caracter curinga ‘.’;
3. A seguir, temos um intervalo incluído entre colchetes de todas as letras
alfabéticas em letras minúsculas;
4. O + seguinte indica que queremos corresponder qualquer número
dessas letras minúsculas em seqüência, contanto que tenhamos pelo
menos um deles;
Voltando ao PHP

^www\.[a-z]+\.com$

E então outro ‘.’ Literal, o com e o caractere


especial $ que informa que com é o final
da string procurada.
Voltando ao PHP

^www\.[a-z]+\.com$

E então outro ‘.’ Literal, o com e o caractere


especial $ que informa que com é o final
da string procurada.
Voltando ao PHP
function simple_dot_com($url)
{
return(ereg('^www\\.[a-z]+\\.com$',$url));
}

$urls_to_test = array('www.ibm.com',
'www.sun.com',
'www.zend.com',
'www.java.sun.com',
'java.sun.com',
'www.IBM.com',
'www.php.net',
'www.isto nao é um endereço web.com',);

while ($test=array_pop($urls_to_test)){
if (simple_dot_com($test))
print("\"$test\" é uma url simples<br>");
else
print("\"$test\" não é uma url simples<br>");

Você também pode gostar