Buscar

APOSTILA - PROGRAMAçâO PARA INTERNET

Prévia do material em texto

Diretor Geral 
Gilmar de Oliveira
Diretor de Ensino e Pós-graduação
Daniel de Lima
Diretor Administrativo 
Eduardo Santini
Coordenador NEAD - Núcleo
de Educação a Distância
Jorge Van Dal
Coordenador do Núcleo de Pesquisa
Victor Biazon
Secretário Acadêmico
Tiago Pereira da Silva
Projeto Gráfico e Editoração
André Oliveira Vaz
Revisão Textual
Kauê Berto
Web Designer
Thiago Azenha
FICHA CATALOGRÁFICA
FACULDADE DE TECNOLOGIA E 
CIÊNCIAS DO NORTE DO PARANÁ. 
Núcleo de Educação a Distância;
VIEIRA, Ricardo Bortolo.
Programação para Internet. Ricardo. Bortolo Vieira.
Paranavaí - PR.: Fatecie, 2020. 121 p.
Ficha catalográfica elaborada pela bibliotecária
Zineide Pereira dos Santos.
UNIFATECIE Unidade 1
Rua Getúlio Vargas, 333,
Centro, Paranavaí-PR
(44) 3045 9898
UNIFATECIE Unidade 2
Rua Candido Berthier
Fortes, 2177, Centro
Paranavaí-PR
(44) 3045 9898
UNIFATECIE Unidade 3
Rua Pernambuco, 1.169,
Centro, Paranavaí-PR
(44) 3045 9898
UNIFATECIE Unidade 4
BR-376 , km 102, 
Saída para Nova Londrina
Paranavaí-PR
(44) 3045 9898
www.fatecie.edu.br
As imagens utilizadas neste 
livro foram obtidas a partir
do site ShutterStock
Professor Me. Ricardo Bortolo Vieira
 
●	 Graduação em Ciência da Computação pela Universidade Estadual de Maringá 
(2003). 
●	 Especialização de Engenharia de Software pela Universidade Estadual de Lon-
drina (2007). 
●	 MBA em Gestão em Saúde Suplementar pela São Marcos (2009). 
●	 Especialização de Gerência de Projetos pela Fundação Getúlio Vargas (2011). 
●	 Mestre em Desenvolvimento de Tecnologias pelo Instituto LACTEC.(2017)
●	 Doutorando em Informática para PUCPR . 
●	 Gerente	 de	Desenvolvimento	 de	 software	 e	 profissional	 do	mercado	 de	TI	 a	
mais de 12 anos.
●	 Professor de nível superior da Faculdade Cidade Verde de Maringá (FCV), 
Universidade Federal do Paraná (UFPR), Faculdade de Engenharia e Inovação 
Tecnológica (FEITEP), Fundação Getúlio Vargas (FGV) e Pontifícia Universida-
de Católica (PUC).
●	 Experiência na área de Ciência da Computação, com ênfase em Sistemas de 
Computação e Automação e Robótica, além de experiência em Administração 
com ênfase em Gerenciamento de Projetos.
●	 Lattes: http://lattes.cnpq.br/5731213234468142
AUTOR
http://lattes.cnpq.br/5731213234468142
Seja muito bem-vindo(a)!
Olá prezado(a) aluno(a), este é o livro Programação para INTERNET, sou o 
professor Ricardo Vieira, autor deste material, e o assunto que abordarei no decorrer do 
nosso estudo poderá auxiliá-lo em sua carreira, ou abrir portas para o mundo dos negócios, 
mostrando-lhe como é bom trabalhar com desenvolvimento para Internet. Com o passar do 
tempo, as ferramentas para desenvolvimento foram tornando-se mais simples, rápidas e 
robustas.
Meu objetivo, por meio deste livro, é ensiná-lo como funcionam os detalhes deste 
ambiente de desenvolvimento, que é bem diferente de uma programação monolítica focada 
somente no computador. Além disso, algumas técnicas que podem auxiliá-lo neste processo 
também serão apresentadas. 
Pretendo deixar claro que o uso desse ambiente de desenvolvimento poderá aju-
dá-lo a alcançar os objetivos estratégicos de sua empresa ou auxiliá-lo a colocar em prática 
uma nova ideia. 
Este livro está organizado em quatro unidades, além da introdução e conclusão. 
Cada uma delas correspondendo a uma das partes importante na programação orientada 
a objetos.
Na primeira unidade você irá estudar o histórico e conceitos da Internet e da Lin-
guagem PHP, que será utilizada neste livro.
Já na unidade II você poderá constatar que a Linguagem PHP pode trabalhar com 
funções e todas as suas valorizações. Além disso, veremos a recepção de informações no 
Formulário, grande padrão utilizado na internet para troca de informações, e as validações 
neste formulário. 
Depois, na unidade III, falaremos sobre o Banco de Dados, seus padrões, formatos 
e	linguagens	específicas	que	permitem	ao	desenvolvedor	terceirizar	e	garantir	a	segurança	
dos dados que serão mantidos pelo sistema web que está sendo desenvolvido. No mais, 
será tratado também a forma de comunicação entre o PHP e os bancos de dados existentes 
no mercado. Nesta unidade III será usando o banco MySQL como base para a apresenta-
ção dos conceitos de banco de dados. Na unidade IV, vamos estudar a orientação a objetos 
dentro da linguagem PHP e também falaremos sobre Web Services e a facilidade que a 
linguagem PHP tem com padrões como REST, XML-RPC e SOAP.
Agora, vamos ao que interessa! Tenha um bom estudo e uma boa leitura! 
APRESENTAÇÃO DO MATERIAL
SUMÁRIO
UNIDADE I ...................................................................................................... 6
Programação para a Internet
UNIDADE II ................................................................................................... 35
Programação para a Internet
UNIDADE III .................................................................................................. 61
Programação para a Internet
UNIDADE IV .................................................................................................. 86
Programação para a Internet
6
Plano de Estudo:
1. PROGRAMAÇÃO PARA WEB
2. TIPOS DE ARRAYS
3. TIPOS DE OPERADORES
4. CONSIDERAÇÕES FINAIS
Objetivos de Aprendizagem:
• Conceituar e contextualizar a programação web em nosso dia a dia.
• Compreender os tipos de Array e suas utilizações.
• Estabelecer a importância dos Tipos de Operadores.
UNIDADE I
Programação para a Internet
Professor Mestre Ricardo Vieira
7UNIDADE I Programação para a Internet
INTRODUÇÃO
●	 Esta unidade inicia os estudos sobre Programação para Internet, tratando de 
temas como Histórico, conceitos iniciais da linguagem de programação PHP, 
que utiliza os conceitos da Orientação a Objetos e é uma das linguagens mais 
utilizadas na programação para internet.
●	 Com	uma	linguagem	simplificada	e	detalhada,	apresentamos	também	os	con-
ceitos de utilização de arrays, que será muito utilizado pelos programadores 
para sites, sistemas online e aplicações web.	 E	 por	 fim,	 apresentaremos	 os	
tipos de operadores utilizados dentro da linguagem de programação PHP.
●	 Este é só o começo. Teremos muita coisa boa chegando com o decorrer do 
curso.	Vai	ser	muito	bom	tê-lo	aqui,	estudando	e	se	desenvolvendo	profissional-
mente. Tenha um bom aprendizado e um excelente aproveitamento.
Então vamos lá! 
Bons estudos!
8UNIDADE I Programação para a Internet
1. PROGRAMAÇÃO PARA WEB
1.1. Introdução Programação Web
Para se programar para web, é preciso conhecer primeiro o que é web. A internet 
teve	seu	início	no	final	dos	anos	1960.	Com	a	iniciativa	do	governo	americano,	especifi-
camente do Departamento de Defesa, solicitando a pesquisadores de várias instituições 
dos Estados Unidos para projetar um sistema de defesa, cuja grande diferença em relação 
a outros sistemas já projetados era que esse seria descentralizado, capaz de resistir a 
ataques do inimigo que fossem realizados com armas nucleares e em qualquer ponto do 
Estados Unidos sem necessariamente dividir a comunicação do pais. 
Surgiu então, como solução, um sistema em que os dados eram divididos em pa-
cotes e que estes seriam encaminhados, instantaneamente, por várias rotas que estivem 
disponíveis, ou seja, o sistema era baseado em redes de computadores. Desta maneira, 
esse sistema poderia continuar em operação mesmo quando um ou mais computadores 
dessa rede fossem destruídos ou que não estivessem funcionando, ou seja, a comunicação 
poderia	fluir	para	outros	computadores	que	ainda	estivessem	funcionando.
Na prática, os pesquisadores americanos inventaram uma tecnologia voltada para 
a interligação de computadores que funcionavam em condições precárias de comunicação, 
9UNIDADE I Programação para a Internet
que de maneira simplória poderiam denominar esse conjunto de simples tecnologias, porém 
extremamente	confiável	de	internet.
O nome internet começou a ser usado em 1973, derivado do conceitode “inter-
networking” ou interligação de redes, que vinha sendo estudado pelos pesquisadores 
americanos desde o ano anterior. A rede que conhecemos hoje como internet só surgiu na 
década de 1980. 
1.1.1. A Cronologia da Internet 
Para você entender melhor como surgiu a internet, nada como acompanhar a sua 
cronologia desde o nascimento das primeiras ideias relacionadas às redes de computado-
res até os dias atuais.
●	 1957	–	A	União	Soviética	 lança	o	Sputnik,	primeiro	satélite	artificial	da	Terra.	
Em resposta, os Estados Unidos criam a Advanced Research Projects Agency 
(ARPA) dentro do Departamento de Defesa (DoD) para estabelecer a liderança 
dos Estados Unidos na ciência e na tecnologia militar.
●	 1969 – No dia 1º de maio foi montado o primeiro equipamento da rede na Uni-
versidade da Califórnia, de Los Angeles, (UCLA). Ficou, então, criado o primeiro 
ponto de conexão da rede, que se chamava ARPANET. Ainda em 1969 foram 
montados os três pontos restantes de conexão. O segundo ponto de conexão 
foi o do Instituto de Pesquisas de Stanford e o terceiro ponto de conexão foi o 
Centro de Pesquisas da Universidade da Califórnia em Santa Bárbara (UCSB) 
e o da Universidade de Utah.
●	 1970 – Primeira publicação do protocolo Host-Host original da ARPA. Primei-
ro artigo da AFIPS sobre a ARPANET. A ALOHAnet, foi a primeira rede de 
comutação de dados via rádio. Os servidores da ARPANET começam a usar 
o Protocolo de Controle de Rede (Network Control Protocol, NCP), primeiro 
protocolo host-host.
●	 1971 – Foi inventado o programa de e-mail para enviar mensagens através de 
rede distribuída. O programa original foi derivado de dois outros: um programa 
10UNIDADE I Programação para a Internet
de e-mail intra máquina (SENDMSG) e um programa experimental de transfe-
rência de arquivo (CPYNET).
●	 1978 – Os protocolos TCP-IP foram divididos em TCP e IP.
●	 1979 – Inauguração da primeira rede dedicada a Grupos de Discussão – USE-
NET. Foi também lançado o primeiro chat – canal de conversa em tempo real 
acrescido da possibilidade de Role Playing Game (RPG).
●	 1982 – Bob Kahn e Vint Cerf eram os mentores e chefes da equipe que acaba 
inventando o TCP/IP, a linguagem comum a todos os computadores da internet. 
Pela primeira vez a coleção de redes espalhadas que constituíam a ARPANET 
é encarada como uma única rede interligada. As grandes empresas começaram 
a usar a internet para se comunicarem entre elas e com os seus clientes.
●	 1983 – Mudança do NCP para TCP/IP. Movement Information Net – MINET 
(Rede de Movimento de Informação) tem início no começo do ano na Europa, 
conectado à internet em setembro, o Conselho das Atividades da Internet (In-
ternet Activities Board, IAB) foi estabelecido, substituindo o ICCB, ARPANET se 
divide em ARPANET e MILNET; este último se integrou à Rede de Dados de 
Defesa (Defense Data Network), criada no ano anterior. Foram para a MILNET 
68 dos 113 nós existentes.
●	 1984 – Foi introduzido o Sistema de Nome de Domínio (Domain Name System, 
DNS).
●	 1988 – A rede atinge os 60.000 servidores. É concluída a instalação do primeiro 
cabo	de	fibra	óptica	transatlântico	ligando	a	Europa	e	a	América	do	Norte.	Esse	
cabo pode suportar até 40.000 chamadas telefônicas simultâneas. Surge o 
primeiro vírus na internet que tomou a designação de Internet Worm e afeta 
6.000 servidores. Para proteger a rede e aumentar a sua segurança, é criado o 
CERT (Computer Emergency Response Team). Novos termos como “cracker” e 
“hacker” entram para o vocabulário da internet. Pelas mãos de Jarkko Oikarinen 
nasce o IRC – Internet Relay Chat. Canadá, Finlândia, França, Islândia, Norue-
ga, Dinamarca e Suécia ligam-se à internet.
11UNIDADE I Programação para a Internet
●	 1990 – Surgiu nos EUA a primeira Internet Service Provider Commercial. Após 
ter sido absorvida pela internet, a ARPANET	deixa,	definitivamente,	de	existir.	
Peter Deutsh, Alan Emtage e Bill Heelan da McGill lançam o Archie. O primeiro 
software World Wide Web é criado por Tim Berners-Lee. Surgem os primeiros 
ISP (Internet Service Providers) comerciais. O número de servidores na internet 
excede os 300.000. Argentina, Áustria, Bélgica, Brasil, Chile, Grécia, Índia, 
Irlanda, Coreia do Sul, Espanha e Suíça entram na internet. 
●	 1991 – Gopher foi lançado na Universidade de Minnesota.
●	 1992 – Foi inventada a WWW (World Wide Web) por Tim Berners-Lee no CERN 
(Laboratório Europeu de Física de Partículas), em Gênova. A ferramenta de pro-
cura no espaço Gopher, VERONICA, é lançada pela Universidade de Nevada. 
O número de servidores é agora de um milhão. Camarões, Chipre, Equador, 
Estônia, Kuwait, Luxemburgo, Eslováquia, Eslovénia, Venezuela, Antártida, 
Letônia, Malásia e Tailândia ligam-se à internet.
●	 1993 – O Mosaic, de Marc Andreessen, foi lançado pelo Centro Nacional de 
Aplicações de Supercomputação dos Estados Unidos (NCSA) e torna-se a 
primeira implementação de um browser para a internet correr em ambientes 
Windows, Unix e Macintosh. É criado o InterNIC pela Fundação Nacional de 
Ciência Americana. A Casa Branca e as Nações Unidas passam a estar on line. 
Bulgária, Costa Rica, Egito, Fiji, Gana, Guam, Indonésia, Cazaquistão, Quénia, 
Liechtenstein, Peru, Romênia, Federação Russa, Turquia, Ucrânia, Ilhas Vir-
gens e Emirados Árabes Unidos ligam-se à rede.
●	 1994 – Começou a funcionar o First Virtual, o primeiro banco exclusivamente 
acessível pela internet. Jim Clark e Marc Andreessen fundam a Mosaic Com-
munications Corp., que viria originar a Netscape Communications Corp. Surge 
a primeira estação de rádio a transmitir via internet. Foi lançado o Netscape 
Navigator e respectivo software de servidor. O número de servidores na Net 
ultrapassava os três milhões. Algéria, Arménia, Bermuda, Burkina Faso, China, 
Colômbia, Polinésia Francesa, Líbano, Lituânia, Macau, Marrocos, Nova Cale-
dônia, Nicarágua, Nigéria, Panamá, Filipinas, Senegal, Sri Lanka, Suazilândia, 
Uruguai, Uzbequistão, Jamaica e Jordânia entram para a rede. ARPANET/
12UNIDADE I Programação para a Internet
Internet celebra seu 25º aniversário. Aparecimento das primeiras páginas de 
comércio eletrônico. Localidades começaram a conectar-se diretamente à in-
ternet. WWW supera a telnet para se tornar o segundo serviço mais popular 
da rede (atrás da FTP) baseado em porcentagem da distribuição do tráfego de 
pacotes e bytes na NSFNET. Os dez principais domínios por servidor #: com, 
edu, uk, gov, de, ca, mil, au, org, net.
●	 1995 – Os dez principais domínios por servidor #: com, edu, net, gov, mil, org, 
de, uk, ca, au. Tecnologias do Ano: WWW, mecanismos de procura. Tecnologias 
Emergentes: Código móvel (JAVA, JAVAscript), ambientes virtuais (VRML), fer-
ramentas de colaboração (Collaborative tools). A NSFNET volta a assumir um 
caráter exclusivamente acadêmico depois do tráfego de backbone da internet 
passar para as mãos dos ISP comerciais. Serviços on-line tradicionais começam 
a oferecer acesso à internet. As ações do Netscape atingem valores recordes. A 
WWW ultrapassa o FTP em volume de tráfego na internet. Lançamento do MS 
Internet Explorer 2.0 para Windows 95. James Gosling e uma equipe de progra-
madores da SUN Microsystems lançam o Java – linguagem de programação 
orientada	à	internet.	Entram	na	rede	a	Etiópia,	Costa	do	Marfim,	Cook	Islands,	
Cayman Islands, Anguilla, Gibraltar, Vaticano, Kiribati, Kyrgyzstan, Madagáscar, 
Maurícias, Micronésia, Mônaco, Mongólia, Nepal, Nigéria, Samoa Oriental, San 
Marino, Tanzânia, Tonga, Uganda e Vanuatu.
●	 1996 – É lançado o Netscape Navigator 2.0, que se torna o primeiro web 
browser a suportar JavaScripts. Três empresas de serviço de procura na rede 
lançam as suas ações no mercado – são elas a Yahoo, a Excite e Lycos. Bill 
Clinton aprova leis de telecomunicações no sentido de penalizar a distribuição 
de conteúdos “inadequados” na internet. A internet pela TV – web TV – é uma 
realidade.Os motores de pesquisa, a Internet Phone e a linguagem Java são as 
tecnologias do ano. A internet	fica	com	quase	dez	milhões	de	servidores	on-line	
e aproximadamente quarenta milhões de utilizadores em 150 países. Qatar, 
República Centro-Africana, Omã, Norfolk Island, Tuvalu, Polinésia Francesa, 
Síria, Aruba, Camboja, Guiana Francesa, Eritreia, Cabo Verde, Burundi, Benin, 
Bósnia-Herzegovina, Andorra, Guadalupe, Guernsey, Isleof Man, Jersey, Laus, 
Maldivas, Ilhas Marshall, Mauritânia, Ilhas Marianas do Norte, Ruanda, Togo, 
Iémen e Zaire ligam-se à rede.
13UNIDADE I Programação para a Internet
●	 1997 – Tecnologias emergentes: Push, Streaming Media. A America on-line Inc. 
adquire a Netscape Communications Corporation por um valor cifrado em 4,2 
bilhões de dólares. Os selos postais eletrônicos tornam-se uma realidade com 
o US Postal Service, que permite a compra e download para impressão a partir 
da web. A Microsoft é processada pela Justiça americana, com base na Lei 
Antitruste, sob a alegação de prejudicar a concorrência, pois o Windows 98 dis-
tribui gratuitamente o browser Internet Explorer. As tecnologias mais relevantes 
desse ano foram o e-Commerce, e-Auctions, Portais de Entrada e o XML.
●	 1998 – Tecnologias do ano: Comércio Eletrônico, Leilões on-line, Portais. A Abi-
lene, a rede Internet 2, atravessa o Atlântico e conecta-se com a NORDUnet e 
a SURFnet. Surge a ISTF – Internet Societal Task Force, liderada por Vint Cerf, 
com o objetivo de promover questões sociais e preocupações relacionadas com 
a internet. As tecnologias do ano foram o e-Trade, online Banking e o MP3. A 
Palestina entra na rede.
●	 2000 – Avanços na internet, aumento do número de usuários, internet para 
dispositivos móveis.
●	 Dias atuais – A internet continua em constante expansão no planeta e número 
de serviços aumenta também sem precedentes.
1.2. O que é PHP? 
O PHP é a linguagem de desenvolvimento da Web escrita por e para desenvolve-
dores da Web. PHP	significa:	Hypertext Preprocessor ou Pré-processador de hipertexto. O 
produto foi originalmente chamado de Personal Home Page Tools e muitas pessoas ainda 
pensam que é isso que o acrônimo representa. Mas à medida que se expandiu em escopo, 
um nome novo e mais apropriado, embora GNU-ishly recursivo foi selecionado pelo voto 
da comunidade. O PHP está atualmente em sua sétima reescrita principal, chamada PHP 
7 ou simplesmente PHP. 
O PHP é uma linguagem de script do lado do servidor, que pode ser incorporada 
em HTML ou usada como um binário autônomo, embora o uso anterior seja muito mais 
comum. Os produtos proprietários nesse “nicho” são as Active Server Pages da Microsoft, 
14UNIDADE I Programação para a Internet
o Macromedia ColdFusion e as Java Server Pages da Sun. Alguns jornalistas de tecnologia 
costumavam chamar o PHP de “código aberto ASP” porque sua funcionalidade é seme-
lhante à do produto da Microsoft - embora essa formulação fosse enganosa, já que o PHP 
foi desenvolvido antes do ASP. Nos últimos anos, no entanto, o PHP e o Java do lado do 
servidor ganharam força, enquanto o ASP perdeu o mindshare, portanto essa comparação 
não parece mais apropriada. 
Mas, no momento, podemos pensar nele como uma coleção de tags super HTML 
ou pequenos programas que são executados dentro de suas páginas da Web - exceto 
no lado do servidor, antes de enviado para o navegador. Por exemplo, você pode usar o 
PHP para adicionar cabeçalhos e rodapés comuns a todas as páginas de um site ou para 
armazenar dados enviados por formulários em um banco de dados. Estritamente falando, 
o PHP tem pouco a ver com layout, eventos, manipulação de DOM on-the-fly, ou realmente 
qualquer coisa sobre o que uma página da Web parece e soa como. Na verdade, a maior 
parte do que o PHP	faz	é	invisível	para	o	usuário	final.	Alguém	olhando	para	uma	página	
PHP não necessariamente será capaz de dizer que ela não foi escrita apenas em HTML, 
porque geralmente o resultado do PHP é HTML. 
O PHP	é	um	módulo	oficial	do	Apache HTTP Server, o servidor Web líder de mer-
cado que executa cerca de 67% da World Wide Web (de acordo com a amplamente citada 
pesquisa de servidor da Web da Netcraft).	Isso	significa	que	o	mecanismo	de	script PHP 
pode ser incorporado ao próprio servidor Web, levando a um processamento mais rápido, 
alocação	de	memória	mais	eficiente	e	manutenção	simplificada.	Como	o	Apache Server, 
o PHP	é	totalmente	multiplataforma,	o	que	significa	que	é	executado	em	vários	servidores	
indo do Linux, passando pelo Windows e e chegando até no Mac OS (a partir da versão 
X). Todos os projetos sob a égide da Apache Software Foundation - incluindo PHP - são 
programas open source.
1.2.1. Uma Breve História do PHP
O PHP foi criado no outono de 1994 por Rasmus Lerdorf , engenheiro de software, 
membro da equipe Apache. A primeira parte do PHP foi desenvolvida para uso pessoal 
no	final	de	1994.	Versões	 iniciais	era	um	wrapper CGI que o ajudava a acompanhar as 
pessoas que olhavam para o seu site pessoal. 
15UNIDADE I Programação para a Internet
A primeira versão usada por outros estava disponível no início de 1995 e era co-
nhecida como Ferramentas Pessoais de Página Inicial. Ele montou um pacote chamado 
Personal Home Page Tools (também conhecido como PHP Construction Kit) em resposta 
à demanda de usuários que haviam descoberto o seu trabalho por acaso ou de boca em 
boca. Consistia de um mecanismo de análise muito simplista que compreendia apenas 
alguns macros especiais e vários utilitários que eram de uso comum nas páginas iniciais da 
época. Um livro de visitas, um contador e algumas outras coisas. 
O analisador foi reescrito em meados de 1995 e denominado PHP / FI Versão 2. O 
FI veio de outro pacote que Rasmus havia escrito, que interpretava os dados do formulário 
html. Ele combinou os scripts das ferramentas Personal Home Page com o Form Interpreter 
e adicionou suporte SQL e o PHP / FI nasceu. O PHP / FI cresceu a um ritmo incrível e as 
pessoas começaram a contribuir com código para isso.
Em meados de 1997, o PHP estava sendo usado em aproximadamente 50.000 
sites em todo o mundo. Estava claramente se tornando grande demais para qualquer pes-
soa sozinha, mesmo alguém tão concentrado e enérgico quanto Rasmus. Uma pequena 
equipe de desenvolvimento principal agora executa o projeto no modelo “benevolent junta” 
de código aberto, com contribuições de desenvolvedores e usuários em todo o mundo. 
Zeev Suraski e Andi Gutmans, os dois programadores israelenses que desenvolveram 
os analisadores PHP3 e PHP4, também generalizaram e estenderam seu trabalho sob a 
rubrica de Zend.com (Zeev, Andi, Zend).
O quarto trimestre de 1998 iniciou um período de crescimento explosivo para PHP, 
já que todas as tecnologias de código aberto desfrutaram de publicidade massiva. Em 
outubro de 1998, de acordo com o melhor palpite, pouco mais de 100.000 domínios únicos 
usavam o PHP de alguma forma. Pouco mais de um ano depois, o PHP quebrou a marca 
de um milhão de domínios. Quando escrevemos a primeira edição deste livro no primeiro 
semestre de 2000, o número aumentou para cerca de dois milhões de domínios. Enquanto 
escrevemos isso, aproximadamente 15 milhões de servidores Web públicos (no sentido de 
software, não o sentido de hardware) têm o PHP instalado neles. 
As implementações de PHP público variam de sites de mercado de massa, como o 
Excite Webmail e o Indianapolis 500 - Indianapolis Motor Speedway, que oferecem milhões 
de visualizações de página por dia, por meio de sites “Nicho de massa” como Sourceforge.
16UNIDADE I Programação para a Internet
net e Epinions.com, que tendem a ter maiores necessidades de funcionalidade e centenas 
de milhares de usuários, para sites de e-commerce e de livros como a Harvard.com e muito 
mais.
Em sua versão PHP 5, ele se esforçou para oferecer algo que muitos usuários têm 
clamado nos últimos anos: funcionalidade muito melhorada de programaçãoorientada a 
objetos (OOP). O PHP há muito tempo concordou com o modelo de programação de ob-
jetos com funções que permitem que os programadores de objetos obtenham resultados e 
informações	de	maneira	familiar	a	eles.	Esses	esforços	ficaram	aquém	do	ideal	para	muitos	
programadores, no entanto, e os esforços para forçar o PHP a construir sistemas totalmen-
te orientados a objetos muitas vezes geraram resultados não intencionais e prejudicaram 
o desempenho. O modelo de objeto reconstruído do PHP 5 aproximou o PHP de outras 
linguagens orientadas a objetos, como Java e C ++, oferecendo suporte a recursos como 
sobrecarga, interfaces, variáveis e métodos de membros privados e outras construções OO 
padrão.
Quanto a versão 6, não chegou e nem chegará a ser lançada como uma versão do 
PHP, pois tinha como objetivo corrigir falhas apontadas na versão 5.2 e versões anteriores, 
de não terem suporte nativo Unicode. Assim em 2005 chegou a ser construído um grande 
um grupo de trabalho para desenvolver uma versão PHP 6 que tivesse suporte, mas em 
2009 foi lançada a versão 5.3 com algumas funcionalidades previstas para o PHP 6, só que 
mantendo-se sem o suporte Unicode.
Os recursos que supostamente seriam incorporados na versão PHP 6 foram sendo 
integrados a partir das versões 5.3 e 5.4, razão pela qual o PHP 6 deixou de fazer sentido 
como	uma	versão	principal.Contudo	 ,	este	assunto	não	 foi	pacífico	e	chegou	a	ser	uma	
matéria discutida entre os programadores, desde 2014, com vista a saber se a versão 
posterior à 5.x deveria ser designada por PHP 7, acabando por ser adotada.
No	que	toca	a	versão	PHP	7,	ela	foi	lançada	em	definitivo	no	final	de	2015.	Apesar	
da introdução desta versão, há uma expectativa que demore algum tempo até que a mes-
ma seja usada, na medida em que há um período de adaptação. Contudo, para facilitar o 
aprendizado, será utilizado a versão PHP 5, com o conteúdo e os exemplos apresentados 
neste livro.
17UNIDADE I Programação para a Internet
2. TIPOS DE ARRAYS
2.1. Os Usos de Arrays
Um array é uma coleção de variáveis indexadas e agrupadas em uma única super 
variável facilmente referenciada que oferece uma maneira fácil de passar vários valores 
entre linhas de código, funções e até mesmo páginas. Vale a pena listar as maneiras co-
muns pelas quais os arrays são usados no código PHP real. Muitas variáveis de ambiente 
PHP embutidas estão na forma de matrizes, por exemplo, $ _SESSION, que contém todos 
os nomes e valores de variáveis sendo propagados de uma página para outra através do 
mecanismo de sessão do PHP). Se você quiser acessá-los, você precisa entender, no 
mínimo, como fazer referência a matrizes. 
A maioria das funções de banco de dados transporta suas informações através de 
matrizes, criando um pacote compacto de um bloco de dados arbitrário. É fácil transmitir 
conjuntos inteiros de argumentos de formulário HTML de uma página para outra em uma 
única matriz. Os arrays	 são	 um	 bom	 contêiner	 para	 fazer	manipulações	 (classificação,	
contagem e assim por diante) de todos os dados que você desenvolve ao executar o script 
de uma única página. Quase toda situação que exige que um número de dados seja empa-
cotado e tratado como um é apropriado para um array PHP.
18UNIDADE I Programação para a Internet
2.1. Mas o que são Arrays PHP? 
Arrays PHP são matrizes associativas com um pouco de maquinário extra, inserido. 
A	parte	associativa	significa	que	as	matrizes	armazenam	valores	de	elemento	em	associa-
ção com valores de chave em vez de uma ordem de índice linearmente restrita. Se você viu 
Arrays em outras linguagens de programação, é provável que elas tenham sido matrizes 
vetoriais em vez de matrizes associativas - a seguir faremos uma explicação sobre essa 
diferença. 
Se você armazenar um elemento em uma Arrays associativa com uma chave, tudo 
que você precisa para recuperá-lo mais tarde desse Arrays será o valor da chave. Por 
exemplo, o armazenamento é tão simples assim: 
$ state_location [‘San Mateo’] = ‘California’; 
que armazena o elemento ‘California’ na variável de array $ state_location, em associação 
com a chave de pesquisa “San Mateo”. Após isso ter sido armazenado, você poderá procu-
rar o valor armazenado usando a chave, assim:
 $ state = $ state_location [‘San Mateo’]; // equals ‘Califórnia’;
Simples, não? Se tudo o que você deseja no Arrays é armazenar pares de chave / 
valor, às informações anteriores serão tudo o que você precisará saber. Da mesma forma, 
se você quiser associar uma ordem numérica com um monte de valores, tudo o que você 
precisará fazer é usar inteiros como valores chave, como no código a seguir:
$ meu_array [1] = “A primeira coisa”; 
$ meu_array [2] = “A segunda coisa”; // e assim por diante...
Todas as variáveis no PHP são denotadas com um $ inicial, não apenas variáveis 
escalares. Em segundo lugar, mesmo que a matriz seja associativa, os índices são agrupa-
dos por colchetes ([ ]) em vez de chaves ({ }).	Por	fim,	não	há	tipo	de	matriz	ou	lista	indexada	
apenas por números inteiros. A convenção é usar inteiros como índices associativos, e o 
próprio array mantém uma ordenação interna para propósitos de iteração. 
Além do mecanismo que possibilita esse tipo de associação de chave / valor, os 
arrays rastreiam algumas outras coisas nos bastidores. Por causa disso, às vezes os tra-
19UNIDADE I Programação para a Internet
tamos como outros tipos de estruturas de dados. Como veremos, os arrays podem ser 
multidimensionais. Eles podem armazenar valores em associação com uma sequência de 
valores-chave em vez de uma única chave. Além disso, as matrizes mantém automatica-
mente uma lista ordenada dos elementos que foram inseridos nelas, independentemente 
de quais são os valores-chave. Isso possibilita tratar matrizes como listas vinculadas. Em 
geral, revelaremos o funcionamento desse maquinário extra à medida que exploramos as 
funções que o utilizam.
2.2. Criando Arrays Simples
Existem três maneiras principais de criar um array no script PHP: atribuindo um 
valor em um (e, assim, criando-o implicitamente), usando a construção array() e chamando 
uma função que retorna um array como seu valor. 
2.3. Atribuição Direta 
A maneira simples de criar uma Array é agir como se uma variável já fosse uma 
matriz e atribuísse valor a ela, assim: 
$ meu_array [1] = “A primeira coisa em meu array que acabei de criar”;
 Se $ meu_array for uma variável não vinculada (ou vinculada a uma variável no-
narray) antes desta instrução, ela será agora uma variável vinculada a uma matriz com um 
elemento. Se este não for o caso, a matriz será armazenada em associação com a chave 
inteira. Se nenhum valor estiver associado a esse número, um novo array de matriz será 
criada para mantê-lo; se o valor estiver associado a 1, o valor anterior será sobrescrito. Você 
também pode atribuir em uma matriz omitindo o índice inteiramente como em $ meu_array[ ].
2.4. A Construção Array() 
A outra maneira de criar um array é através da Construção Array(), que cria um 
novo	 array	 a	 partir	 da	 especificação	 de	 seus	 elementos	 e	 chaves	 associadas.	 Em	 sua	
versão mais simples, array() é chamado sem argumentos, o que cria um novo array vazio. 
Em sua próxima versão mais simples, array () pega uma lista separada por vírgula de 
elementos	a	serem	armazenados,	sem	qualquer	especificação	de	chaves.	O	resultado	é	
20UNIDADE I Programação para a Internet
que	os	elementos	serão	armazenados	na	matriz	na	ordem	especificada	e	são	atribuídos	a	
chaves inteiras começando com zero. Por exemplo, a declaração: 
$ cesto_de_frutas = array (‘maça’, ‘laranja’, ‘banana’, ‘pera’); 
faz com que a variável $ cesto_de_frutas seja atribuída a um array com quatro elementos 
String (‘maça’, ‘laranja’, ‘banana’, ‘pera’), com os índices 0, 1, 2 e 3, respectivamente. Além 
disso, o array se lembrará da ordem em que os elementos foram armazenados. 
A atribuiçãopara $ cesto_de_frutas, então, tem exatamente o mesmo efeito que o 
seguinte: 
$ cesto_de_frutas [0] = ‘maça’; 
$ cesto_de_frutas [1] = “laranja”; 
$ cesto_de_frutas [2] = “banana”; 
$ cesto_de_frutas [3] = “pera”; 
supondo que a variável $ cesto_de_frutas estava des-associada na primeira atribuição. 
O mesmo efeito também poderia ter sido obtido pela omissão dos índices na tarefa, da 
seguinte forma:
$ cesto_de_frutas [] = ‘maça’; 
$ cesto_de_frutas [] = “laranja”; 
$ cesto_de_frutas [] = “banana”; 
$ cesto_de_frutas [] = “pera”; 
Neste caso, o PHP novamente assume que você está adicionando elementos se-
quenciais que devem ter índices numéricos contando para cima a partir de zero.
2.5. Especificando Índices Usando Array() 
O exemplo simples de array() na seção anterior atribui índices a nossos elementos, 
mas esses índices serão inteiros, contando para cima a partir de zero. Acontece que o 
array()	nos	oferece	uma	sintaxe	especial	para	especificar	quais	devem	ser	os	índices.	Em	
vez de valores de elemento separados por vírgulas, você fornece pares de valor-chave 
separados por vírgulas, onde a chave e o valor são separados pelo símbolo especial =>. 
21UNIDADE I Programação para a Internet
Considere a seguinte declaração: 
$ cesto_de_frutas = array (0 =>’ maca ‘, 1 =>’ laranja ‘, 2 =>’ banana ‘, 
3 =>’ pera ‘); 
A avaliação terá exatamente o mesmo efeito que nossa versão anterior - cada 
string será armazenada na matriz sucessivamente, com os índices 0, 1, 2, 3 em ordem. Em 
vez disso, no entanto, podemos usar exatamente a mesma sintaxe para armazenar esses 
elementos com diferentes índices: 
$ cesto_de_frutas = array (‘vermelho’ => ‘maçã’, ‘laranja’ => ‘laranja’, 
‘amarela’ => ‘banana’ ‘verde’ => ‘pera’); 
Isso nos dá os mesmos quatro elementos, adicionados ao nosso novo array na 
mesma ordem, mas indexados por nomes de cores em vez de números. Para recuperar o 
nome do fruto amarelo, por exemplo, nós apenas avaliamos a expressão:
 $ cesto_de_frutas [amarela] // será igual a ‘banana’ 
Finalmente, como dissemos anteriormente, você pode criar um array vazio cha-
mando a função de array sem argumentos. Por exemplo: 
$ meu_array_vazio = array (); 
cria um array sem elementos. Isso pode ser útil para passar para uma função que espera 
uma matriz como argumento.
2.6. Funções Retornando Arrays 
A	maneira	final	de	criar	um	array em um script é chamar uma função que retorna 
um array.	Esta	pode	ser	uma	função	definida	pelo	usuário,	ou	pode	ser	uma	função	interna	
que faz um array via métodos internos ao PHP. Muitas funções de interação com banco de 
dados, por exemplo, retornam seus resultados em arrays que as funções criam na hora. 
Outras funções existem simplesmente para criar arrays que são úteis para ter funções 
posteriores para manipulação de array. Uma delas é range(), que recebe dois inteiros como 
argumentos e retorna uma matriz preenchida com todos os inteiros (inclusive) entre os 
argumentos. Em outras palavras: 
22UNIDADE I Programação para a Internet
$ meu_array = range (1,5);
 é equivalente a: 
$ meu_array = array (1, 2, 3, 4, 5);
2.7. Recuperando Valores
 Depois de armazenarmos alguns valores em uma matriz, como podemos obtê-los 
novamente? 
2.7.1. Recuperando por índice 
A maneira mais direta de recuperar um valor é usar seu índice. Se tivermos ar-
mazenado um valor em $ meu_array no índice 5, $ meu_array [5] deverá avaliar o valor 
armazenado. Se $ meu_array nunca foi atribuído, ou se nada foi armazenado nele com um 
índice de 5, $ meu_array [5] se comporta como uma variável não ligada.
2.7.2. A construção list () 
Há várias outras maneiras de recuperar valores de arrays sem usar chaves, a maio-
ria das quais explora o fato de que os arrays estão registrando silenciosamente a ordem 
na qual os elementos são armazenados. Mas um desses exemplos é list (), que é usado, 
para atribuir vários elementos de matriz a variáveis em sucessão. Suponha que as duas 
instruções a seguir sejam executadas: 
$ cesto_de_frutas = array (‘maca’, ‘laranja’, ‘banana’); lista ($ fru-
ta_vermelha, $ fruta_laranja) = $ cesto_de_frutas; 
Isso atribui o String “maca” à variável $ fruta_vermelha e a string “laranja” à variável 
$	fruta_laranja	(sem	atribuição	de	“banana”,	porque	não	fornecemos	variáveis			suficientes).	
As variáveis em list () serão atribuídas a elementos da matriz na ordem em que foram origi-
nalmente armazenadas na matriz. Observe o comportamento incomum aqui - a construção 
list () está no lado esquerdo do operador de atribuição (=), onde normalmente encontramos 
apenas variáveis. Em certo sentido, list () é o oposto ou inverso de array () porque array () 
23UNIDADE I Programação para a Internet
empacota seus argumentos em um array, e list () desmonta o array novamente em atribui-
ções de variáveis individuais. Se avaliarmos: 
list ($ primeiro, $ segundo) = array ($ primeiro, segundo); 
os valores originais de $ primeiro e $ segundo serão atribuídos a essas variáveis 
novamente, depois de terem sido armazenados brevemente em uma matriz.
2.8. Arrays Multidimensionais 
Até agora, os exemplos de array que vimos foram todos unidimensionais, com 
apenas um nível de chaves entre colchetes. No entanto, o PHP pode suportar facilmente 
arrays multidimensionais, com números arbitrários de chaves. E assim como nos arrays 
unidimensionais, não há necessidade de declarar nossas intenções com antecedência - a 
primeira referência a uma variável array pode ser uma atribuição como:
 $ multi_array [1] [2] [3] [4] [5] = “Tesouro profundamente enterrado”; 
Essa é uma matriz de cinco dimensões com chaves sucessivas que acontecem 
neste caso, para ser cinco inteiros sucessivos.
Na verdade, pensar em matrizes como multidimensionais torna as coisas mais con-
fusas do que precisam ser. Em vez disso, lembre-se de que os valores armazenados em 
matrizes podem ser matrizes, tão legitimamente quanto podem ser cadeias ou números. 
A sintaxe de índice múltiplo no exemplo anterior é simplesmente uma maneira concisa 
de se referir a um array (quadridimensional) que é armazenado com uma chave de 1 in 
$ multi_array, que por sua vez tem um array (tridimensional) armazenado nele, e assim 
por diante. Note também que você pode ter diferentes profundidades de referência em 
diferentes partes da matriz, assim: 
$ multi_level_array [0] = “uma string simples”; $ multi_level_array [1] 
[‘contains’] = “um String armazenado mais profundamente”; 
A chave integer de 0 armazena um String, e a chave de 1 armazena uma matriz que, 
por sua vez, tem um String nela. No entanto, você não pode continuar com esta atribuição: 
$ multi_level_array [0] [�contém�] = �outra string profunda�; 
24UNIDADE I Programação para a Internet
sem o resultado perdido a primeira atribuição será “um String simples”. A chave de 0 pode 
ser usada para armazenar um String ou outra array, mas não ambas ao mesmo tempo. Se 
nos lembrarmos de que arrays multidimensionais são simplesmente arrays que têm outros 
arrays, armazenadas nelas, é mais fácil ver como o construtor de criação de array () se 
generaliza. De fato, mesmo essa tarefa aparentemente complicada não é tão complicada: 
$ cornucopia = array (‘fruta’ => 
 array (‘vermelho’ => ‘maçã’, 
 ‘laranja’ => ‘laranja’, 
 ‘amarelo’ => ‘banana ‘, 
 ‘ verde ‘=>’ pêra ‘), 
 ‘flor’=> 
 array (‘ vermelho ‘=> ‘ rosa ‘,
 ‘ amarelo ‘=>’ girassol ‘,
 ‘ púrpura ‘=>’ íris ‘));
É simplesmente um array com dois valores armazenados em associação com cha-
ves. Cada um desses valores é um array em si. Depois de termos feito o array, podemos 
referenciá-lo assim:
 $ tipo_desejado = ‘flor’; $ cor_desejada = “roxo”; print (“O $ cor_desejada 
$ tipo_desejado é” $ cornucopia [$ tipo_desejado [$ cor_desejada]); 
Veja a saída do navegador: 
A florroxa é iris
Há um motivo pelo qual usamos o operador de concatenação de String ( . ) na de-
claração impressa anterior, em vez de simplesmente incorporar a $ cornucopia [$ tipo_de-
sejado] [$ cor_desejada ] em nossa sequência de impressão, como fazemos com outras 
variáveis. A análise de cadeia de caracteres PHP3 pode ser confundida por vários índices 
de matriz em uma cadeia de aspas, portanto, ela precisa ser concatenada separadamente. 
O PHP desde a versão 4 lida com isso de uma maneira melhor - você estará seguro ao 
inserir referências de array em um String contanto que você coloque a referência entre 
chaves, assim: 
print (“O que queremos é {$ cornucopia [$ tipo_desejado [ $ cor_desejada 
]} ”);
25UNIDADE I Programação para a Internet
Finalmente, observe que não há grande penalidade por indexação indevida em um 
array multidimensional quando estamos tentando recuperar algo; se nenhuma chave for en-
contrada, a expressão será tratada como uma variável não vinculada. Então, se tentarmos 
o seguinte: 
$ tipo_desejado = “fruta”; 
$ cor_desejada = “roxo”; // uh-oh, nós não guardamos nenhuma ameixa
print (“$ cor_desejada $ tipo_desejado é” $ cornucopia [$ tipo_desejado ] 
[$ cor_desejada ]);
26UNIDADE I Programação para a Internet
3 . TIPOS DE OPERADORES
3.1. Operadores Aritméticos
Só podem ser utilizados quando os operandos são números (integer ou float). Se 
forem de outro tipo, terão seus valores convertidos antes da realização da operação.
Tabela 01 - Operadores Aritméticos.
Exemplo Nome Resultado
$ a + $ b Adição Soma de $ a e $ b.
$ a - $ b Subtração Restante de $ b subtraído de $ a.
$ a * $ b Multiplicação Produto de $ a e $ b.
$ a / $ b Divisão Dividendo de $ a e $ b.
$ a % $ b Modulus Restante de $ a dividido por $ b.
3.2. Operadores de Strings
Existe apenas um operador de cadeia de caracteres - o operador de concatenação 
(“.”). Exemplo:
27UNIDADE I Programação para a Internet
$ a = “Olá”; 
$ b = $ a.”Mundo!”; 
// agora 
$ b = “Olá mundo”!
3.3. Operadores de Atribuição
O operador de atribuição básico é “=”. Sua primeira inclinação pode ser pensar 
nisso	como	“igual	a”.	Não.	Isso	realmente	significa	que	o	operando	à	esquerda	é	definido	
como	o	valor	da	expressão	nos	direitos	(isto	é,	“é	definido	como”).
O valor de uma expressão de atribuição é o valor atribuído. Ou seja, o valor de 
“$ a = 3” é 3. 
Isso permite que você faça algumas coisas complicadas:
$ a = ($ b = 4) + 5; // $ a é igual a 9 agora e $ b foi definido como 4.
Além do operador de atribuição básico, existem “operadores combinados” para 
todos os operadores aritméticos e de cadeia de caracteres binários que permitem usar um 
valor	em	uma	expressão	e,	em	seguida,	definir	seu	valor	para	o	resultado	dessa	expressão.	
Por exemplo:
$ a = 3; 
$ a + = 5; 
//	define	$	a	para	8,	como	se	tivéssemos	dito:	
$ a = $ a + 5; 
$ b = “ Hello “; 
$ b. = “ There!”; 
//	define	$	b	para	“Hello	There!”,	assim	como	$	b	=	$	b.	“	There!	“;
3.4. Operadores bit a bit
Operadores	bit	a	bit	permitem	que	você	ative	ou	desative	bits	específicos	dentro	de	
um inteiro.
28UNIDADE I Programação para a Internet
Tabela 02 - Operadores bit a bit.
3.5 Operadores lógicos
Tabela 03 - Operadores lógicos.
A razão para as duas variações diferentes de “ And “ e “ Or “ operadores é que eles 
operam em precedentes diferentes. (Ver abaixo.)
29UNIDADE I Programação para a Internet
3.6 Operadores de Comparação
Os operadores de comparação, como o próprio nome sugere, permite comparar 
dois valores.
Tabela 04 - Operadores de Comparação.
3.7. Operadores de Expressão Condicional
Outro operador condicional é o operador: “ ?: “ (Ou trinário), que opera como em C 
e em muitas outras linguagens.
 (expr1)? (expr2): (expr3);
Essa expressão retorna para expr2 se expr1 for avaliada como verdadeira e expr3 
se expr1 for avaliada como false.
3.8. Operadores de Incremento e Decremento
Tabela 05 - Operadores de Incremento e Decremento.
Podem ser utilizados de duas formas: antes ou depois da variável. Quando utilizado 
antes, retorna o valor da variável antes de incrementá-la ou decrementá-la. Quando utiliza-
do depois, retorna o valor da variável já incrementado ou decrementado.
30UNIDADE I Programação para a Internet
Exemplos:
$a = $b = 10; // $a e $b recebem o valor 10 
$c = $a++; // $c recebe 10 e $a passa a ter 11 
$d = ++$b; // $d recebe 11, valor de $b já incrementado.
3.9. Operadores de Ordem de Precedência dos Operadores
A	precedência	de	um	operador	especifica	como	“estreitamente”	ele	une	duas	ex-
pressões. Por exemplo, na expressão 1 + 5 * 3, a resposta é 16 e não 18, porque o operador 
de multiplicação (“*”) tem uma precedência maior do que o operador de adição (“+”).
A tabela a seguir lista a precedência dos operadores com os operadores de prece-
dência mais baixa, listados primeiro.
Tabela 06 - Operadores de Ordem de Precedência dos Operadores
31UNIDADE I Programação para a Internet
SAIBA MAIS
Como criar minha primeira classe em PHP
Caro(a)	aluno(a),	dando	continuidade	no	aprimoramento	profissional,	deixo	
a sugestão de leitura deste artigo que tenho certeza que te ajudará a sanar dúvidas 
e te dará uma visão mais ampla da Programação para Internet.
Neste conteúdo você aprenderá a criar sua primeira classe (PHP Class) na 
linguagem PHP. Aprenda também a usar herança e interfaces, bem como métodos, 
atributos e propriedades.
https://www.devmedia.com.br/como-criar-minha-primeira-classe-em-
-php/38895
 
REFLITA
“O	 futuro	não	é	definido	em	uma	 trilha.	É	algo	que	podemos	decidir,	e	na	
medida em que não violamos quaisquer leis conhecidas do universo, provavelmente 
podemos fazê-lo funcionar da maneira que queremos”. (Alan Kay)
Caro(a)	aluno(a),	Dessa	forma,	fica	a	reflexão	para	todos	nós,	de	como	pen-
sar a programação, de criar e superar as expectativas, de maneira que sempre possa 
buscar o seu melhor. Seja o melhor que você puder ser. O aprimoramento deve ser 
constante.
Referência: https://citacoes.in/citacoes/1841701-alan-kay-the-future-is-not-
-laid-out-on-a-track-it-is-somet/
https://www.devmedia.com.br/como-criar-minha-primeira-classe-em-php/38895
https://www.devmedia.com.br/como-criar-minha-primeira-classe-em-php/38895
32UNIDADE I Programação para a Internet
4. CONSIDERAÇÕES FINAIS
Caro(a)	aluno(a),	chegamos	ao	final	desta	unidade	que	foi	preparada	com	muito	
carinho para você. Nesta unidade foram apresentados alguns conceitos da Programação 
para Internet como os tipos de Arrays, os tipos de Operadores e também uma introdução à 
programação web com uma retrospectiva cronológica da internet.
O conteúdo que foi apresentado nesta unidade, foi somente a ponta do Iceberg, foi 
superficial,	mas	nas	próximas	unidades	você	poderá	se	aprofundar	nos	conceitos	e	prática	
da Programação para Internet. 
Estaremos juntos na próxima unidade.
Até lá!
33UNIDADE I Programação para a Internet
Material Complementar
LIVRO
Título: Desenvolvimento web com PHP e MySQL
Autor: Evaldo Junior Bento.
Editora: Casa do Código.
Sinopse: Imagine a internet na qual você pode apenas consumir 
conteúdos, como se fosse um jornal, uma revista, ou ainda, um 
programa na televisão. Chato, né? O segredo da famosa web 2.0 
é a capacidade de interação entre as pessoas e os serviços online. 
Aprenda com esse livro os primeiros passos para usar o PHP, uma 
ferramenta que possibilita a criação de páginas web dinâmicas. 
Veja também como integrar o PHP ao MySQL, um dos bancos 
de dados mais usados no mundo. A dupla PHP e MySQL é usada 
por diversos tipos de aplicações e sites, de blogs até portais de 
notícias e grandes redes sociais.
FILME/VÍDEO
Título: Por que aprender PHP
Ano: 2017.
Sinopse: Existem muitas razões para usar o PHP para a progra-
mação de aplicações web. Em primeiro lugar, é uma linguagem 
livre, sem taxas de licenciamento, de modo que o custo de usá-la 
é mínimo. Além disso, você tem a liberdade de escolha de sistema 
operacional e de servidor web. Para lhe ajudara planejar seus 
estudos separamos aqui um DevCast em que demos algumas 
dicas para quem está iniciando:
Link do vídeo: https://www.devmedia.com.br/guia/programador-
-php/38193
https://www.devmedia.com.br/guia/programador-php/38193
https://www.devmedia.com.br/guia/programador-php/38193
34UNIDADE I Programação para a Internet
REFERÊNCIAS
BENTO, Evaldo Junior. Desenvolvimento web com PHP e MYSQL. São Paulo. Casa do 
Código Editora. 2013.
MAZZA, Lucas. HTML5 e CSS3 - Domine a web do futuro. São Paulo. Casa do Código 
Editora. 2012.
BAKKEN, Stig Saether et al. PHP manual. Zend Technologies, Ltd, 1999.
CONVERSE, Tim; PARK, Joyce; MORGAN, Clark. PHP5 and MySQL bible. John Wiley & 
Sons, 2004.
35
Plano de Estudo:
1. TIPOS DE FUNÇÕES
2. RECEBENDO DADOS DE FORMULÁRIOS
3. VALIDANDO DADOS DE FORMULÁRIOS
4. CONSIDERAÇÕES FINAIS
Objetivos de Aprendizagem:
• Conceituar e contextualizar os tipos de funções da Linguagem PHP.
• Compreender como são recebidos os dados de formulários.
• Estabelecer a importância da validação de dados de formulários dentro da 
programação PHP. 
UNIDADE II
Programação para a Internet
Professor Mestre Ricardo Vieira
36UNIDADE II Programação para a Internet
INTRODUÇÃO
Esta unidade inicia os estudos com uma breve introdução aos Tipos de funções. 
Você	verá	nesta	unidade,	como	é	definida	uma	função,	os	argumentos	e	muito	mais.	
Com	o	estudo	mais	aprofundado	e	específico	sobre	o	recebimento	de	formulários	e	
também a sua utilização dentro da Programação para Internet.
Você não pode parar, pois preparamos muitas coisas boas e trouxemos um conteú-
do que foi preparado pensando em te trazer mais conhecimentos e um direcionamento em 
sua	carreira	profissional.	Então	vamos	aos	estudos!	
Agora é mão na massa e bom estudo!
37UNIDADE II Programação para a Internet
1. TIPOS DE FUNÇÕES
1.1. Introdução a Função
O que é uma função?
Uma função é uma forma de quebrar um pedaço de código e dar um nome a esse 
pedaço, para que você possa usar esse pedaço mais tarde em apenas uma linha de código. 
As funções são mais úteis quando você usar o código em mais de um lugar, mas elas 
poderão ser úteis mesmo em situações de uso único, porque podem tornar seu código 
muito mais legível. (Converse; Park; Morgan, 2004. p. 148).
1.1.1. Definição de Função 
A Sintaxe básica para definições	de	função	têm	a	seguinte	forma:	
Figura	26.	Exemplo	de	definição	de	função.	Elaborado	pelo	autor,	2019.
38UNIDADE II Programação para a Internet
Ou	seja,	as	definições	de	função	têm	quatro	partes:	
 
●	 A função de palavra especial 
●	 O nome que você quer dar à sua função 
●	 A lista de parâmetros da função - variáveis de sinal de dólar separadas por 
vírgulas 
●	 O corpo da função - um conjunto de instruções em anexo
Assim como com nomes de variáveis, o nome da função deve ser composto de 
letras, números e sublinhados, e não deve começar com um número. Ao contrário dos 
nomes das variáveis, os nomes das funções são convertidos para letras minúsculas antes 
de serem armazenados internamente pelo PHP, portanto, uma função é a mesma, indepen-
dentemente da capitalização.
A	versão	curta	do	que	acontece	quando	uma	função	definida	pelo	usuário	é	cha-
mada é: 
1. O PHP procura a função pelo seu nome (você receberá um erro se a função 
ainda	não	tiver	sido	definida).
2. O PHP substitui os valores dos argumentos de chamada (ou os parâmetros 
reais)	pelas	variáveis			na	lista	de	parâmetros	da	definição	(ou	nos	parâmetros	
formais).
3. As declarações no corpo da função são executadas. Se alguma das instruções 
executadas for uma instrução de retorno, a função para e retorna o valor for-
necido. Caso contrário, a função será concluída após a última instrução ser 
executada, sem retornar um valor. 
1.2. Exemplo de definição de função
Como exemplo, imagine que temos o seguinte código que ajuda a decidir qual 
tamanho de refrigerante engarrafado comprar. (Isso é em algum momento, quando os com-
pradores de supermercados rotineiramente usam seus navegadores da Web para acessar 
nosso prático site de comparação de preços).
39UNIDADE II Programação para a Internet
Figura	27.	Exemplo	de	definição	de	função.	Elaborado	pelo	autor,	2019
A	figura	01	apresenta	o	código	e	como	esse	tipo	de	comparação	acontece	no	nosso	
site o tempo todo, uma boa prática de programação é torná-lo uma função reutilizável. Uma 
maneira de fazer isso seria a seguinte reescrita: 
Figura	28-	Exemplo	de	definição	de	função	reescrita. Elaborado pelo autor, 2019.
Nossa função melhor_negocio,	 apresentado	 na	 figura	 02,	 abstrai	 as	 três	 linhas	
no	código	anterior	que	fizeram	a	aritmética	e	a	comparação.	Leva	quatro	números	como	
argumentos e retorna o valor de uma expressão booleana. Como acontece com qualquer 
valor booleano, podemos incorporá-lo na parte de teste de uma instrução if. Embora essa 
função seja maior que o código original, há dois benefícios para essa reescrita: Podemos 
usar a função em vários lugares (salvando linhas no geral) e se decidirmos alterar o cálculo, 
terá que fazer a alteração em apenas um lugar.
Alternativamente, se a única maneira de usarmos essas comparações de preço 
é imprimir qual transação é preferida, podemos incluir a impressão na função, conforme 
figura	29.
40UNIDADE II Programação para a Internet
Figura	29	-	Outro	exemplo	de	definição	de	função.	Elaborado	pelo	autor,	2019.
Nossa primeira função usou a declaração de retorno para enviar de volta um re-
sultado booleano, que foi usado em um teste if. A segunda função não tem declaração de 
retorno, porque é usada para o efeito colateral de imprimir texto no navegador do usuário. 
Quando a última declaração desta função é executada, o PHP simplesmente passa para 
executar a próxima instrução após uma chamada de função. 
1.2.1. Argumentos da Função
As informações podem ser passadas para as funções através da lista de argumen-
tos, que é uma lista delimitada por vírgulas de variáveis e / ou constantes.
O PHP suporta a passagem de argumentos por valor (o padrão), passagem por 
referência e valores de argumento padrão. Listas de argumentos de tamanho variável não 
são suportadas, mas um efeito similar pode ser obtido pela passagem de arrays.
Figura 30- Exemplo de Argumentos da Função.Elaborado pelo autor, 2019.
1.3.1. Passagem de Argumentos por Referência
Por padrão, os argumentos da função são passados por valor, para que se você 
alterar o valor do argumento dentro da função, ele não seja alterado fora da função. Se 
41UNIDADE II Programação para a Internet
você	deseja	permitir	que	uma	função	modifique	seus	argumentos,	você	deverá	passá-los	
por referência.
Se você quiser que um argumento para uma função seja sempre passado por 
referência,	você	pode	preceder	um	&	para	o	nome	do	argumento	na	definição	da	função,	
conforme	figura	31.
Figura 31- Exemplo de Passagem de Argumentos por Referência. Elaborado pelo autor, 2019.
Se você deseja passar uma variável por referência a uma função que não faz isso 
por padrão, você pode preceder um & ao nome do argumento na chamada de função, 
conforme	apresentado	na	figura	32.
Figura 32 - Exemplo de Passagem de Argumentos por Referência. Elaborado pelo autor, 2019.
1.3.2. Argumentos com Valores Pré-Definidos (Padrão)
Uma	função	pode	definir	valores	padrão	no	estilo	C	++	para	argumentos	escalares	
da seguinte forma:
Figura 33- Exemplo de Argumentos com Valores Padrão. Elaborado pelo autor, 2019.
42UNIDADE II Programação para a Internet
A saída do fragmento acima é:
Fazendo uma xícara de cappuccino. 
Fazendo uma xícara de café expresso.
O valor padrão deve ser uma expressão constante, não, por exemplo, uma variável 
ou membro de classe.
Observe que, ao usar argumentos padrão, qualquer padrão deve estar no lado 
direito de qualquer argumento não padrão; caso contrário, as coisas não funcionarão como 
esperado. Considere o seguinte trecho de código:
Figura 34 - Exemplo de Argumentos com Valores Padrão. Elaborado peloautor, 2019.
A saída do exemplo acima é:
Atenção: Falta o argumento 2 na chamada de makeyogurt () em /usr/local/etc/httpd/
htdocs/php3test/functest.html on line 41 Fazendo uma tigela de framboesa.
Agora, compare o acima com isto:
Figura 35- Exemplo de Argumentos com Valores Padrão. Elaborado pelo autor, 2019.
A saída deste exemplo é:
Fazendo uma tigela de framboesa acidophilus.
43UNIDADE II Programação para a Internet
2. RECEBENDO DADOS DE FORMULÁRIOS
2.1. Introdução ao Formulário PHP
O manuseio de formulários é um dos melhores recursos do PHP. A combinação de 
HTML para construir um formulário de entrada de dados, PHP para manipular os dados e 
um servidor de banco de dados para armazenar os dados está no cerne de todos os tipos 
de tarefas da Web extremamente úteis.
 
2.2. Formulários HTML
Você já sabe muito do que precisa para manipular formas no PHP. Existem alguns 
pontos	específicos	a	serem	apresentados	quando	falamos	de	formulários:
●	 Sempre use um NOME para cada elemento de entrada de dados INPUT, 
SELECT, TEXTAREA e assim por diante. Esses atributos NAME se tornarão 
nomes de variáveis PHP - você não poderá acessar seus valores se não usar 
um atributo NAME para cada um deles. 
●	 Um campo de formulário NAME não precisa ser igual ao nome do campo de 
banco de dados correspondente, mas geralmente é uma boa prática.
●	 Você	poderá	e	geralmente	deverá	especificar	um	valor	em	vez	de	deixar	HTML	
enviar o valor padrão. Considere substituir um valor numérico por um valor de 
44UNIDADE II Programação para a Internet
texto, se possível, porque o banco de dados é muito mais lento em seqüências 
de caracteres correspondentes do que inteiros.
●	 O	valor	pode	ser	definido	para	os	dados	que	você	deseja	exibir	no	formulário.
●	 Lembre-se de que você pode passar variáveis ocultas de um formulário para 
outro ou página, usando os elementos de entrada de dados HIDDEN. Essa 
prática poderá ter implicações de segurança negativas, mas geralmente não é 
pior do que armazenar os dados em um cookie.
●	 Lembre-se de que você pode passar múltiplas variáveis em um array - mas você 
precisará informar ao usuário que esta é uma possibilidade. (Converse; Park; 
Morgan, 2004. p. 311).
Uma das dúvidas mais frequentes entre desenvolvedores iniciantes em PHP é 
como manipular os dados de formulário enviados para os scripts PHP, principalmente dados 
de “checkbox” e upload de arquivos.
Um formulário HTML é apenas uma tela bonita para onde os usuários poderão 
inserir informações que serão interpretados de alguma maneira por algum script em um 
determinado servidor. E no nosso caso, é um script PHP.
Primeiro: o formulário deverá conter um botão “submit”, através do comando apre-
sentado	na	figura	36.
Figura 36- Exemplo do comando de envio com o botão submit. Elaborado pelo autor, 2019.
Segundo: todos os campos que serão tratados no script PHP deverão conter o 
parâmetro “name”, caso contrário, os dados não serão passados para o script PHP, confor-
me	apresentado	na	figura	37.
Figura 37- Exemplo de script PHP com parâmetro name. Elaborado pelo autor, 2019.
45UNIDADE II Programação para a Internet
Como as informações do formulário serão passadas para esse script PHP e como 
as informações do formulário enviado serão tratadas, dependerá de você.
Existem 2 métodos que poderão ser usados: GET e POST. O recomendável sempre 
para todos os formulários é usar o método POST, onde os dados enviados não são visíveis 
nas URLs, ocultando possíveis importantes informações e permitindo o envio de longas 
informações. O GET é totalmente o contrário disso.
Você deve estar se perguntando “como as informações chegam para o script PHP?”
Figura 38 - Exemplo de formulário HTML. Elaborado pelo autor, 2019.
O	formulário	apresentado	na	figura	39	utiliza	o	método	POST	para	envio	das	infor-
mações, em um “script.php”:
Figura 39 - Uso de método POST para envio de formulário. Elaborado pelo autor, 2019.
Na	figura	13	vemos	um	exemplo	de	como	utilizar	o	formulário	criado	na	figura	12.	
Se o formulário tivesse sido enviado usando o método GET, você simplesmente teria que 
usar $_GET no lugar de $_POST.
Em vez de usar $_GET ou $_POST você poderá escrever a variável com o mesmo 
nome do campo do formulário (no exemplo, $campo1 e $campo2). Mas, esse uso não é 
recomendado,	 pois	 se	 a	 diretiva	 “register_globals”	 na	 configuração	 do	 seu	 PHP	 estiver	
desativada, as variáveis com nome dos campos dos formulários, terão um valor vazio.
Uma solução para isso é usar a função import_request_variables no começo dos 
seus scripts que interpretam formulários. Essa função aceita 3 letras como argumentos: P, 
46UNIDADE II Programação para a Internet
G e C, referentes a $_POST, $_GET e $_COOKIE respectivamente. Exemplo de uso:
Figura 40 - Exemplo da utilização da função import_request_variables.Elaborado pelo autor, 2019.
Exemplo: Você possui formulário com os campos “nome”, “endereço” e “idade”. 
Assuma que a diretiva “register_globals” do seu PHP esteja desligada, mas, você já havia 
programado o script usando as variáveis no escopo global, no lugar de $_POST.
Adicionando aquela função no começo do script, as variáveis do seu formulário 
postado	estarão	conforme	a	figura	41.
Figura 41 - Exemplo de uma junção no começo do formulário.Elaborado pelo autor, 2019.
Serão extraídas cada campo para uma variável diferente: $nome, $endereco e 
$idade.
2.3. Campos Hidden
Os campos hidden são usados para passar informações que não poderão ser 
alteradas pelo usuário que estará inserindo informações no formulário. Por exemplo: você 
tem um site com sistema de login e o usuário quer alterar as informações de login dele. O 
script que irá manipular esse formulário, precisa saber o ID do usuário para poder alterar as 
informações no banco de dados, então esse ID é um campo hidden. Exemplos de utilização 
de	campos	hidden	estão	nas	figuras	42	e	43.
Figura 42- Exemplo de hidden.html. Elaborado pelo autor, 2019.
47UNIDADE II Programação para a Internet
Figura 43- Exemplo de hidden.php. Elaborado pelo autor, 2019.
2.4. Campos Text e Textarea
Os campos text e textarea são os tipos mais simples, onde há somente um possível 
valor por campo. Dispensam maiores explicações e estão presentes nas Figuras 18 e 44.
Figura 44- Exemplo de texts.html. Elaborado pelo autor, 2019.
Figura 45 - Exemplo de texts.php. Elaborado pelo autor, 2019.
2.5. Campos Radio
Campos	Radio	permitem	um	relacionamento	de	um	para	muitos	entre	identificador	
e valor, ou seja, eles têm múltiplos possíveis valores, mas somente um pode ser pré-exibido 
ou selecionado. Eles são melhores para pequenos conjuntos de opções, geralmente entre 
dois	e	dez,	que	precisam	de	mais	do	que	uma	palavra	ou	duas	de	texto	para	se	identificarem.
Infelizmente, é um pouco mais difícil representar os dados armazenados em um 
botão de opção do que em uma caixa de seleção ou campo de texto. Isso ocorre porque 
existe apenas um valor possível para um texto ou uma área de texto e apenas dois valores 
possíveis para uma caixa de seleção - mas os botões de opção podem ter mais de dois 
valores possíveis. Portanto, você terá que produzir parte do formulário atual com o PHP. 
Isso parece um pouco menos arrumado do que os estilos que empregamos anteriormente, 
então você deve investir mais tempo e esforço para alcançar um script facilmente legível. 
48UNIDADE II Programação para a Internet
Mais uma vez, a experiência de interface de usuário permitida pelos botões de rádio vale 
a pena o problema extra que isso dá ao desenvolvedor da Web. (Converse; Park; Morgan, 
2004.p. 317).
Por exemplo: você tem um sistema de “quiz”.
Cada pergunta possui 5 possíveis respostas. Cada resposta é um radio, onde os 5 
radios	dessa	pergunta	possuem	o	mesmo	identificador,	mas	cada	um	com	valor		diferente.	
Este	exemplo	está	presente	nas	figuras	46	e	47.
Figura 46 - Exemplo de radio.html. Elaborado pelo autor, 2019.
Figura 47 -Exemplo de radio.php. Elaborado pelo autor, 2019.
2.6. Campos Checkbox
O tipo Checkbox tem somente um possível valor por entrada: on value (marcado) 
ou no value	(desmarcado).	No	script	você	deve	fazer	a	verificação	para	saber	se	o	campo	
foi marcado ou não.
É possível também utilizar grupos de checkbox com o mesmo nome. Para isso 
você	deve	adicionar	“[]”	no	final	do	nome,	para	o	PHP	interpretar	como	array,	veja	o	código	
exemplo	nas	figuras	48	e	49.
49UNIDADE II Programação para a Internet
Figura 48- Exemplo de checkbox.html. Elaborado pelo autor, 2019.
Figura 49 - Exemplo de checkbox.php. Elaborado pelo autor, 2019.
2.7. Campos Select
Os campos select permitem tratar uma variedade de opções, onde o usuário pode 
selecionar apenas uma opção ou múltiplas opções. Quando você permite múltiplas sele-
ções,	deve	adicionar	“[]”	no	final	do	nome,	para	o	PHP	interpretar	como	array.
Nos	exemplos	das	figuras	50	e	51,	mostramos	o	funcionamento	e	tratamento	de	
ambas.
50UNIDADE II Programação para a Internet
Figura 50 - Exemplo de um select.html. Elaborado pelo autor, 2019.
Figura 51 - Exemplo de um select.php. Elaborado pelo autor, 2019.
A manipulação de dados de formulários é uma das coisas mais importantes que 
todo desenvolvedor deve saber, pois normalmente é por meio dela que existe a comunica-
ção de aplicação x banco de dados.
51UNIDADE II Programação para a Internet
3. VALIDANDO DADOS DE FORMULÁRIOS
Vamos falar sobre uma funcionalidade do HTML5 que é muito útil na criação de 
validações de formulários, é o HTML5 Validator.
Há muito tempo a validação de um campo de formulário é uma coisa que vem 
dando muito trabalho aos desenvolvedores, muitos programadores desenvolveram formas 
de validação em javascript, depois com o surgimento do jQuery logo apareceu um plugin 
de	validação,	mas	agora	com	o	novo	HTML5	as	coisas	ficaram	muito	mais	fáceis,	pois	a	
validação tornou-se algo nativo da linguagem.
Será apresentado algumas opções de como realizar a validação de um campo, seja 
ela por javascript ou no HTML5. 
3.1. Validação com Javascript
Começaremos	pela	validação	em	javascript.	Na	figura	52	vamos	usar	um	código	
simples de um formulário, onde iremos validar se a informação foi preenchida, caso contrá-
rio a informação não será enviada.
52UNIDADE II Programação para a Internet
Figura 52 - Exemplo validação de um código html. Elaborado pelo autor, 2019.
Esse	é	o	nosso	formulário,	que	deverá	ser	exibido	como	mostra	a	figura	53.
Figura 53 - Aparência do formulário. Elaborado pelo autor, 2019.
Agora precisamos usar o Javascript para validar esses campos. O que queremos 
que aconteça é que seja impossível enviar os dados do formulário com o campo vazio, para 
isso	iremos	utilizar	um	código	javascript	conforme	apresentado	na	figura	53.
53UNIDADE II Programação para a Internet
Figura 54 - Código javascript de validação. Elaborado pelo autor, 2019. 
Após colocarmos esse código nosso formulário deverá validar, se por exemplo 
deixarmos	o	campo	nome	em	branco,	ele	mostrará	a	mensagem	conforme	figura	55.
Figura 55 - Resultado da validação. Elaborado pelo autor, 2019.
Dessa forma nosso formulário será validado, de forma simples e fácil, mas com um 
código extenso, como podemos ver.
54UNIDADE II Programação para a Internet
3.2. Validando com HTML5
Com a chegada da nova versão do HTML, além de muitas outras melhorias, agora 
podemos validar um campo sem precisar escrever muito código, tornando o trabalho dos 
desenvolvedores muito mais prático e fácil.
Na	figura	30	veremos	que	é	possível	fazer	o	mesmo	do	exemplo	anterior	de	uma	
maneira muito mais fácil e prática e escrevendo menos código.
Figura 56 - Validando formulário com HTML5. Elaborado pelo autor, 2019.
Você não pode esquecer que para usar recursos HTML5 precisará colocar o doc-
type referente à linguagem.
Como você pode ver, foi escrito muito menos código do que anteriormente e na 
figura	57	poderá	ver	que	o	resultado	é	o	mesmo	da	validação	com	javascript.
Figura 57 - Resultado da validação em HTML5. Elaborado pelo autor, 2019.
55UNIDADE II Programação para a Internet
3.3. Personalizando a Mensagem de Validação
Caso você queira personalizar a mensagem de validação, é possível incluir uma 
nova mensagem junto da mensagem padrão do browser utilizando o atributo title, mas 
dessa	forma	ela	não	é	personalizada	por	completo.	Veja	na	figura	58	como	isso	ficaria.
Figura 58 - Inserindo mensagem junto com mensagem padrão. Elaborado pelo autor, 2019.
SAIBA MAIS
Para dar continuidade aos estudos proponho a você como sugestão para o seu 
desenvolvimento dentro da Programação para Internet, este minicurso, Introdução 
ao PHP, da Plataforma Devmedia, que grande que será de grande utilidade como 
complemento do que foi estudado nesta unidade.
https://www.devmedia.com.br/curso/introducao-ao-php/2171
https://www.devmedia.com.br/curso/introducao-ao-php/2171
56UNIDADE II Programação para a Internet
REFLITA
“Algumas	pessoas	acham	que	foco	significa	dizer	sim	para	a	coisa	em	que	
você	vai	se	focar.	Mas	não	é	nada	disso.	Significa	dizer	não	às	centenas	de	outras	
boas ideias que existem. Você precisa selecionar cuidadosamente.” (Steve Jobs)
Inspirado em uma das maiores mentes da computação, Steve Jobs, hoje é o 
dia certo para estudar, trabalhar, buscar algo novo.
Mas, não devemos fazer isso tentando abraçar o mundo, ou seja, tentando 
fazer tudo ao mesmo tempo, mas sim, um de cada vez, porém de forma completa 
e totalmente envolvida. Assim, priorizar é a competência que v. deve aprimorar, so-
mente assim será capaz de ir além e fazer coisas que outros não podem.
Hoje é o dia!
Faça o hoje valer a pena, fazendo boas escolhas!
Referência:
https://www.tecmundo.com.br/internet/3145-frases-impactantes-sobre-tec-
nologia-e-informatica.htm
https://www.tecmundo.com.br/internet/3145-frases-impactantes-sobre-tecnologia-e-informatica.htm
https://www.tecmundo.com.br/internet/3145-frases-impactantes-sobre-tecnologia-e-informatica.htm
57UNIDADE II Programação para a Internet
CONSIDERAÇÕES FINAIS
Caro(a) Aluno(a)!
 
Chegamos	ao	final	desta	unidade	II	da	Programação	para	Internet	com	satisfação	
de tê-lo aqui conosco, com o sentimento de grande satisfação de saber você querido(a) 
aluno(a)	conseguiu	chegar	até	o	fim.	Parabéns!!!	
 
Nesta unidade, você recebeu uma introdução aos tipos de funções e recebimento 
e validação de formulários.
Caro (a) Aluno (a), mais uma vez gostaria de parabenizá-lo pelo esforço e a dedi-
cação para chegar até aqui. Desejo todo o sucesso que você puder conquistar em sua vida 
pessoal	e	profissional.	
Sucesso!!!
Um grande abraço!
58UNIDADE II Programação para a Internet
Leitura Complementar
Caro(a) aluno(a), na área da tecnologia da informação, é comum haver sempre 
uma	reciclagem	dos	profissionais.	Tudo	muda	o	tempo	todo.	Tecnologias	novas	surgem,	
a	forma	de	fazer	a	mesma	coisa	muda,	se	tornando	mais	eficiente.	E	porque	não	com	as	
linguagens de programação? Ainda mais relacionadas à web, que é o setor em grande 
crescimento atualmente.
Neste artigo são apresentadas algumas novidades que foram incorporadas ao PHP 
5.4. Nesta versão, houve muitas mudanças e incrementos, mas, esse artigo trata de 3 
assuntos importantes dentro do PHP, que são os Servidor HTTP embutido, Estrutura de 
arrays e NameSpaces. 
Espero que você aproveite bem este artigo e que ele possa te orientar dentro da 
Programação para Internet.
Link: https://www.devmedia.com.br/novidades-do-php-5-4/27850
https://www.devmedia.com.br/novidades-do-php-5-4/27850
59UNIDADE II Programação para a Internet
Material Complementar
LIVRO
Título: PHP e Laravel: Crie aplicações web como um verdadeiro 
artesão
Autor: Rodrigo Turini.
Editora. Casa do Código.
Sinopse: Está começando com frameworks PHP? Então, que tal 
criar sites e aplicações web, de forma extremamente produtiva, 
com código bem escrito, de fácil manutenção e organizado? Sim, 
isso é possível com o Laravel 5.1.Nesse livro, Rodrigo Turini mostra os principais recursos do Lara-
vel 5.1, um importante framework PHP para desenvolvimento web. 
Aprenda como escrever código elegante, simples e crie aplicações 
robustas e escaláveis em PHP.
Voltado para iniciantes e seguindo uma didática prática, em poucas 
páginas você irá escrever suas primeiras funcionalidades e, em 
pouco tempo, terá um código funcionando e se comunicando com 
um banco de dados, e implementará funcionalidades reais.
FILME/VÍDEO
Título: Curso de PHP
Ano: 2014
Sinopse: Curso completo para quem quer aprender a criar sites 
utilizando as tecnologias de HTML5 + CSS3 + JavaScript de uma 
maneira simples e objetiva. O professor Gustavo Guanabara vai 
mostrar passo a passo como criar um site completo utilizando as 
três principais tecnologias do momento.
Link do vídeo: https://www.cursoemvideo.com/course/curso-php-
-iniciante/
https://www.cursoemvideo.com/course/curso-php-iniciante/ 
https://www.cursoemvideo.com/course/curso-php-iniciante/ 
60UNIDADE II Programação para a Internet
REFERÊNCIAS
BAKKEN, Stig Saether et al. PHP3 manual. Zend Technologies, Ltd, 1999.
BENTO, Evaldo Junior. Desenvolvimento web com PHP e MYSQL. São Paulo. Casa do 
Código Editora. 2013.
CONVERSE, Tim; PARK, Joyce, MORGAN, Clarck. PHP5 and MySQL Bible. Indianapolis. 
Wiley publishing, inc. 2004.
GUTMANS, Andi; BAKKEN, Stig; RETHANS, Derick. PHP 5 Power Programming (Bruce 
Perens’ Open Source Series). Prentice Hall PTR, 2004.
MAZZA, Lucas. HTML5 e CSS3 - Domine a web do futuro. São Paulo. Casa do Código 
Editora. 2012.
61
Plano de Estudo:
1. INTRODUÇÃO À BANCO DE DADOS
2. ACESSO AO BANCO DE DADOS COM PHP
3. CONSIDERAÇÕES FINAIS
4. REFERÊNCIAS
Objetivos de Aprendizagem:
• Conceituar e contextualizar a utilização de Banco de Dados.
• Compreender os tipos de acessos ao Banco de Dados utilizando o PHP. 
• Estabelecer a importância do Banco de Dados MySQL e o PHP.
UNIDADE III
Programação para a Internet
Professor Mestre Ricardo Vieira
62UNIDADE III Programação para a Internet
INTRODUÇÃO
Caro (a) aluno (a), esta unidade inicia os estudos com uma breve introdução ao 
conceito e a utilização de Banco de Dados dentro da programação para internet. Na pri-
meira parte você poderá encontrar os assuntos de grande importância como escolher um 
banco de dados, os bancos de dados suportados pela linguagem PHP e uma introdução ao 
banco de dados MYSQL.
Na segunda parte, será tratada os assuntos relacionados ao acesso ao banco de 
dados pela linguagem PHP. Você poderá ver os tipos de conexões do MySQL e muito mais. 
Então vamos em frente, bons estudos e tenha um excelente aproveitamento!!!
63UNIDADE III Programação para a Internet
1. INTRODUÇÃO A BANCO DE DADOS
Poderá	ser	definido	como	um	banco	de	dados,	um	conjunto	de	dados	devidamente	
relacionados. Podem-se compreender como dados os objetos conhecidos que poderão ser 
armazenados	e	que	possuem	um	significado	implícito,	mas	o	significado	do	termo	banco	
de dados é mais restrito. Um banco de dados deverá possuir as seguintes propriedades: 
●	 Uma	coleção	lógica	coerente	de	dados	com	um	significado	inerente;	
●	 Uma disposição desordenada dos dados não pode ser referenciada como banco 
de dados;
●	 Projetado, construído e preenchido com valores de dados para um propósito 
específico;	
●	 Um	banco	de	dados	deverá	possuir	um	conjunto	predefinido	de	usuários	e	de	
aplicações; 
●	 Ele pode representar algum aspecto do mundo real, o qual é chamado de “mini 
mundo”; qualquer alteração efetuada no “mini mundo” será automaticamente 
refletida	no	banco	de	dados.
1.1. Escolhendo um Banco de Dados para PHP
Uma das maiores vantagens do PHP em relação a outras linguagens é a facilidade 
de conectividade do banco de dados que ele oferece. O PHP suporta conexões nativas para 
vários dos bancos de dados mais populares, de código aberto e comercial. Você poderá 
64UNIDADE III Programação para a Internet
fazer o downloads das ferramentas de desenvolvimento nos seguintes sites:
Neste site você poderá encontrar informações sobre o MySQL, documentação, downloads, 
tutorial de instalação e muito mais:
https://netbeans.org/kb/docs/ide/install-and-configure-mysql-server_pt_BR.html
Este é o link direto para fazer o download do MySQL:
https://dev.mysql.com/downloads/installer/
Neste site você poderá encontrar o IDE para realizar a programação:
https://www.eclipse.org/oxygen/
https://www.eclipse.org/downloads/
Outra opção de IDE para realizar a programação:
http://brackets.io/
Observação:
Todos os links são de comunidades voltadas para o desenvolvimento, todos os 
downloads são gratuitos e todas as ferramentas são open source. As duas IDEs são edi-
tores de textos, não somente de PHP, nela você terá suporte para outras linguagens de 
programação como Java, C, C++, C#, Python, etc...
1.2. Mas, o que é um Banco de Dados?
Um banco de dados é um aplicativo separado, que armazena uma coleção de 
dados. Cada banco de dados tem uma ou mais APIs distintas para criar, acessar, gerenciar, 
pesquisar e replicar os dados que ele contém. Outros tipos de armazenamento de dados 
podem ser usados, como arquivos no sistema de arquivos ou grandes tabelas de hash na 
memória,	mas	quando	profissionais	falam	sobre	bancos	de	dados,	eles	se	referem	a	um	
aplicativo independente, como Oracle ou SQL Server, etc. (Converse; Park ;Morgan, 2004. 
p.233).
1.3. Por que um Banco de Dados?
Se você se der ao trabalho de usar o PHP, precisará de um banco de dados. 
Mesmo para algo pequeno, como um blog pessoal, você deve pensar bastante sobre as 
vantagens de usar um banco de dados em vez de páginas estáticas ou arquivos de texto 
incluídos que não possuem procedimentos de backup ou controle de transação.
https://dev.mysql.com/downloads/installer/
https://www.eclipse.org/oxygen/
https://www.eclipse.org/downloads/
http://brackets.io/
65UNIDADE III Programação para a Internet
1.4. Manutenção e Escalabilidade
Ter o PHP montando suas páginas rapidamente a partir de um modelo e um banco 
de dados é uma experiência muito boa. Depois disso, você nunca mais voltará a gerenciar 
um site HTML estático de qualquer tamanho. Para o esforço de programar uma página, 
você	pode	produzir	 um	número	 infinito	de	páginas	uniformes.	Mude	um,	e	 você	mudou	
todos eles. Agora há sites com centenas de milhares de páginas separadas - você pode ter 
certeza de que ninguém as mantém a mão. Se você tem um conceito da Web que pode, 
eventualmente, crescer para mais de algumas dúzias de páginas, pense em mudar para um 
banco de dados o quanto antes.
1.5. Portabilidade
Como um banco de dados é um aplicativo e não uma parte do sistema operacional, 
você pode transferir facilmente sua estrutura e conteúdo de uma máquina para outra ou 
em certos casos, até mesmo de uma plataforma para outra. Isso é especialmente valioso 
para os desenvolvedores web, que podem desenvolver um projeto sem poder controlar o 
ambiente no qual ele será implementado. Existem até mesmo programas PHP conhecidos, 
como o vBulletin, que mantêm a maior parte do código em um banco de dados para facilitar 
a distribuição.
1.6. Segurança
Um banco de dados pode adicionar outra camada de segurança se for usado com 
sua própria senha ou senhas. Por exemplo, digamos que você use o PHP para manter os 
arquivos de clientes de uma empresa, preenchidos com informações sobre os preços que 
cada cliente pagou pelo produto e reclamações feitas pelos clientes. Essa informação seria 
de ouro para seus concorrentes e embaraçosa se vazasse para alguém, mas você precisa 
colocá-la na Internet para que ela possa ser acessada por seus vendedores. 
Como estamos usando PHP gravando em um banco de dados, você pode manter 
as permissões do diretório, somente leitura e também pedir uma segunda senha antes 
que o banco de dados possa ser alterado. Por exemplo, o caso de um site de conteúdo 
com um grande número de visitantes, um número menor de escritores e um punhado de 
editores.

Continue navegando