Aprendendo PHP.pdf

ssuserad6350 138 views 81 slides Nov 10, 2023
Slide 1
Slide 1 of 81
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77
Slide 78
78
Slide 79
79
Slide 80
80
Slide 81
81

About This Presentation

Curso de PHP


Slide Content

Aprendendo
PHP
Prof. Juliana de Sá
Prof. Fabricio Azevedo

O que é PHP ?
•PHPsignifica:HypertextPreprocessor.Realmente,oprodutofoi
originalmentechamadode“PersonalHomePageTools”;mascomose
expandiuemescopo,umnomenovoemaisapropriadofoiescolhidopor
votaçãodacomunidade.Vocêpodeutilizarqualquerextensãoquedesejar
paradesignarumarquivoPHP,masosrecomendadosforam.php,.phtml.O
PHPestáatualmentenaversão4,chamadodePHP4ou,simplesmentede
PHP.

O que é PHP ?
•OPHPtempoucarelaçãocomlayout,eventosouqualquercoisa
relacionadaàaparênciadeumapáginadaWeb.Defato,amaiorpartedo
queoPHPrealizaéinvisívelparaousuáriofinal.Alguémvisualizandouma
páginadePHPnãoserácapazdedizerquenãofoiescritaemHTML,porque
oresultadofinaldoPHPéHTML.

O que é PHP ?
•OPHPéummódulooficialdoservidorhttpApache,olíderdomercadode
servidoresWeblivresqueconstituiaproximadamente55porcentodaWorld
WideWeb.IssosignificaqueomecanismodescriptdoPHPpodeser
construídonopróprioservidorWeb,tornandoamanipulaçãodedadosmais
rápida.AssimcomooservidorApache,oPHPécompatívelcomvárias
plataformas,oquesignificaqueeleexecutaemseuformatooriginalem
váriasversõesdoUNIXedoWindows.Todososprojetossobaégideda
ApacheSoftwareFoundation–incluindooPHP–sãosoftwaredecódigo-
fonteaberto.

O que pode ser feito com PHP ?
•Basicamente,qualquercoisaquepodeserfeitaporalgumprogramaCGIpodeser
feitatambémcomPHP,comocoletardadosdeumformulário,gerarpáginas
dinamicamenteouenviarerecebercookies.PHPtambémtemcomoumadas
característicasmaisimportantesosuporteaumgrandenúmerodebancosde
dados,comodBase,Interbase,mSQL,mySQL,Oracle,Sybase,PostgreSQLe
váriosoutros.Construirumapáginabaseadaemumbancodedadostorna-seuma
tarefaextremamentesimplescomPHP.Alémdisso,PHPtemsuporteaoutros
serviçosatravésdeprotocoloscomoIMAP,SNMP,NNTP,POP3e,logicamente,
HTTP.Aindaépossívelabrirsocketseinteragircomoutrosprotocolos.

O que pode ser feito com PHP ?
•Tabela Comparativa

Sintaxe
Delimitando o código PHP

Sintaxe
Otipodetagsmaisutilizadoéoterceiro,queconsisteemuma“abreviação”
doprimeiro.Parautilizá-lo,énecessáriohabilitaraopçãoshort-tagsna
configuraçãodoPHP.Oúltimotiposerveparafacilitarousopor
programadoresacostumadosàsintaxedeASP.Parautilizá-lotambémé
necessáriohabilitálonoarquivodeconfiguraçãodoPHP(php.ini)

Separador de instruções
•Paracadafimdelinhadecódigotemquehaverumpontoevírgula,indicandoao
sistemafimdeinstrução.
Exemplo
<?php
echo“com ponto e vírgula”;
?>
•Linhas de comando, de controle, não precisam de ponto e vírgula.

Separador de instruções
Exemplo
<?php
if($x == $x) {//aqui não precisa de ponto e vírgula
echo“com ponto e vírgula” ;//aqui precisa de ponto e vírgula
}
?>

Nomes de variáveis
•TodavariávelemPHPtemseunomecompostopelocaracter$(cifrão)e
umastring,quedeveiniciarporumaletraouocaracter“_”(underline).
PHPécasesensitive,ouseja,asvariáveis$phpe$PHPsãodiferentes.Por
issoéprecisotermuitocuidadoaodefinirosnomesdasvariáveis.Ébom
evitarosnomesemmaiúsculas,poiscomoveremosmaisadiante,oPHPjá
possuialgumavariáveispré-definidascujosnomessãoformadosporletras
maiúsculas.

Comentários
•Comentáriosdeumalinha
Marcacomocomentárioatéofinaldalinhaouatéofinaldoblocode
códigoPHP-oquevierantes.Podeserdelimitadopelocaracter“#”oupor
duasbarras(//).
Exemplo
<?php
echo“teste”;#istoéumteste
echo“teste2”;//estetesteésimilaraoanterior
?>

Comentários
•Comentáriosdemaisdeumalinha
Temcomodelimitadoresoscaracteres“/*”paraoiníciodoblocoe“*/”
paraofinaldocomentário.SeodelimitadordefinaldecódigoPHP(?>)
estiverdentrodeumcomentário,nãoseráreconhecidopelointerpretador.
Exemplo
<?php
echo“teste”;/*Istoéumcomentáriocommais
deumalinhaquefuncionacorretamente
*/
?>

Tipos de Variáveis
•OPHPsuportaosseguintestiposdedados:
•Int/Long(Inteiros)
•Float/Double(PontoFlutuante)
•String
•Array
•Objeto

Tipos de Variáveis
•PHPutilizachecagemdetiposdinâmica,ouseja,umavariávelpodeconter
valoresdediferentestiposemdiferentesmomentosdaexecuçãodoscript.
Porestemotivonãoénecessáriodeclararotipodeumavariávelparausá-la.
OinterpretadorPHPdecidiráqualotipodaquelavariável,verificandoo
conteúdoemtempodeexecução.
•Aindaassim,épermitidoconverterosvaloresdeumtipoparaoutro
desejado,utilizandootypecastingouafunçãosettype.

Tipos de Variáveis
•int/long(Inteiros)
Umavariávelpodeconterumvalorinteirocomatribuiçõesquesigamas
seguintessintaxes:
$php=1234;#inteiropositivonabasedecimal
$php=-234;#inteironegativonabasedecimal
$php=0234;#inteironabaseoctal-simbolizadopelo0
#equivalea156decimal
$php=0x34;#inteironabasehexadecimal(simbolizado
#pelo0x)-equivalea52decimal.

Tipos de Variáveis
•double/float(Pontoflutuante)
Umavariávelpodeterumvalorempontoflutuantecomatribuiçõesque
sigamasseguintessintaxes:
$php=1.234;
$php=23e4;#equivalea230.000

Tipos de Variáveis
•String
Stringspodemseratribuídasdeduasmaneiras:
a)utilizandoaspassimples(')-Destamaneira,ovalordavariável
seráexatamenteotextocontidoentreasaspas(comexceçãode\\
e\'-vertabelaabaixo)
b)utilizandoaspasduplas(")-Destamaneira,qualquervariávelou
caracterdeescapeseráexpandidoantesdeseratribuído.

Tipos de Variáveis
•Exemplos
<?php
$teste="Brasil";
$php='---$teste--\n';
echo"$php";
?>
Asaídadessescriptserá"---$teste--\n".

Tipos de Variáveis
•Exemplos
<?php
$teste="Brasil";
$php="---$teste---\n";
echo"$php";
?>
Asaídadessescriptserá"---Brasil--"(comumaquebradelinhanofinal).

Tipos de Variáveis -Caracteres de Escape

Tipos de Variáveis
•Arrays(Vetor/Matriz)
ArraysemPHPpodemserobservadoscomomapeamentosoucomo
vetoresindexados.Maisprecisamente,umvalordotipoarrayéumdicionário
ondeosíndicessãoaschavesdeacesso.Valeressaltarqueosíndicespodem
servaloresdequalquertipoenãosomenteinteiros.Inclusive,seosíndices
foremtodosinteiros,estesnãoprecisamformarumintervalocontínuo.
ComoachecagemdetiposemPHPédinâmica,valoresdetiposdiferentes
podemserusadoscomoíndicesdearray,assimcomoosvaloresmapeados
tambémpodemserdediversostipos.

Tipos de Variáveis
•Exemplo
<?php
$cor[1]=“vermelho”;
$cor[2]=“verde”;
$cor[3]=“azul”;
$cor[“teste”]=1;
?>

Tipos de Variáveis
•Exemplo
Equivalentemente,pode-seescrever:
<?php
$cor=array(1=>“vermelho,2=>“verde,3=>“azul”,
“teste=>1);
?>

Tipos de Variáveis
•Listas
AslistassãoutilizadasemPHPpararealizaratribuiçõesmúltiplas.Através
delistasépossívelatribuirvaloresqueestãonumarrayparavariáveis.
Vejamosoexemplo:
list($a,$b,$c)=array(“a”,“b”,“c”);

Tipos de Variáveis
•Ocomandoacimaatribuivaloresàstrêsvariáveissimultaneamente.Ébom
notarquesósãoatribuídosàsvariáveisdalistaoselementosdoarrayque
possuemíndicesinteirosenãonegativos.Noexemploacimaastrês
atribuiçõesforambemsucedidasporqueaoinicializarumarraysem
especificarosíndiceselespassamaserinteiros,apartirdozero.Umfator
importanteéquecadavariáveldalistapossuiumíndiceinteiroeordinal,
iniciandocomzero,queserveparadeterminarqualvalorseráatribuído.No
exemploanteriortemos$acomíndice0,$bcomíndice1e$ccomíndice2.
Vejamosumoutroexemplo:

Tipos de Variáveis
•Exemplo
$arr=array(1=>”um”,3=>”tres”,”a”=>”letraA”,2=>”dois);
list($a,$b,$c,$d)=$arr;
Apósaexecuçãodocódigoacimatemososseguintesvalores:
$a==null
$b==“um”
$c==“dois”
$d==“tres”

Tipos de Variáveis
•Devemosobservarqueàvariável$anãofoiatribuídovalor,poisnoarray
nãoexisteelementocomíndice0(zero).Outrodetalheimportanteéqueo
valor“tres”foiatribuídoàvariável$d,enãoa$b,poisseuíndiceé3,o
mesmoque$dnalista.Porfim,vemosqueovalor“letraA”nãofoiatribuído
aelementoalgumdalista,poisseuíndicenãoéinteiro.Osíndicesdalista
servemapenascomoreferênciaaointerpretadorPHPpararealizaras
atribuições,nãopodendoseracessadosdemaneiraalgumapelo
programador.Demaneiradiferentedoarray,umalistanãopodeser
atribuídaaumavariável,servindoapenasparafazermúltiplasatribuições
atravésdeumarray.

Tipos de Variáveis
•Objetos
Umobjetopodeserinicializadoutilizandoocomandonewparainstanciaruma
classeparaumavariável.
Exemplo
classteste{
functionnada(){
echo“nada”;
}
}
Utilizaçãodeobjetos
$php=newteste;
$php->nada();

Tipos de Variáveis
•Booleanos(Lógicos)
PHPnãopossuiumtipobooleano,masécapazdeavaliarexpressõese
retornartrueoufalse,atravésdotipointeger:éusadoovalor0(zero)
pararepresentaroestadofalse,equalquervalordiferentedezero
(geralmente1)pararepresentaroestadotrue.

Tipos de Variáveis
•Tranformaçõesdetipos
Coerções
Quandoocorremdeterminadasoperações(“+”,porexemplo)entre
doisvaloresdetiposdiferentes,oPHPconverteovalordeumdeles
automaticamente(coerção).Éinteressantenotarqueseooperando
forumavariável,seuvalornãoseráalterado.
Otipoparaoqualosvaloresdosoperandosserãoconvertidosé
determinadodaseguinteforma:Seumdosoperandosforfloat,o
outroseráconvertidoparafloat,senão,seumdelesforinteger,o
outroseráconvertidoparainteger.

Tipos de Variáveis
•Exemplo:
$php=“1”;//$phpéastring“1”
$php=$php+1;//$phpéointeger2
$php=$php+3.7;//$phpéodouble5.7
$php=1+1.5//$phpéodouble2.5

Tipos de Variáveis
Comopodemosnotar,oPHPconvertestringparaintegeroudouble
mantendoovalor.OsistemautilizadopeloPHPparaconverterdestringspara
númeroséoseguinte:
•Éanalisadooiníciodastring.Secontiverumnúmero,eleseráavaliado.Senão,
ovalorserá0(zero);
•Onúmeropodeconterumsinalnoinício(“+”ou“-“);
•Seastringcontiverumpontoemsuapartenuméricaaseranalisada,eleserá
considerado,eovalorobtidoserádouble;
•Seastringcontiverum“e”ou“E”emsuapartenuméricaaseranalisada,o
valorseguinteseráconsideradocomoexpoentedabase10,eovalorobtido
serádouble;

Tipos de Variáveis
•Exemplos
$php=1+“10.5”;//$php==11.5
$php=1+“-1.3e3”;//$php==-1299
$php=1+“teste10.5”;//$php==1
$php=1+“10testes”;//$php==11
$php=1+"10testes";//$php==11
$php=1+"+10testes";//$php==1

Tipos de Variáveis
•Tranformaçõesexplícitasdetipos
AsintaxedotypecastdePHPésemelhanteaoC,bastaescreverotipo
entreparêntesesantesdovalor.
Exemplo:
$php=15;//$phpéinteger(15)
$php=(double)$php//$phpédouble(15.0)
$php=3.9//$phpédouble(3.9)
$php=(int)$php//$phpéinteger(3)
//ovalordecimalétruncado

Tipos de Variáveis
Ostiposdecastpermitidossão:
•(int),(integer)➔mudaparainteger;
•(real),(double),(float)➔mudaparafloat;
•(string)➔mudaparastring;
•(array)➔mudaparaarray;
•(object)➔mudaparaobjeto

Tipos de Variáveis
•Comafunçãosettype
Afunçãosettypeconverteumavariávelparaotipoespecificado,quepode
ser“integer”,“double”,“string”,“array”ou“object”.
Exemplo:
$php=15;//$phpéinteger
settype($php,“double”)//$phpédouble

Tipos de Variáveis
•Definindoconstantes
Paradefinirconstantesutiliza-seafunçãodefine.Umavezdefinido,o
valordeumaconstantenãopoderámaisseralterado.Umaconstantesó
podecontervaloresescalares,ouseja,nãopodeconternemumarraynem
umobjeto.Aassinaturadafunçãodefineéaseguinte:
intdefine(stringnome_da_constante,mixedvalor);
Afunçãoretornatrueseforbem-sucedida.

Tipos de Variáveis
Vejaumexemplodesuautilizaçãoaseguir:
define("pi",3.1415926536);
$circunf=2*pi*$raio;

Operadores
•Aritméticos
Paradefinirconstantesutiliza-seafunçãodefine.Umavezdefinido,o
valordeumaconstantenãopoderámaisseralterado.Umaconstantesó
podecontervaloresescalares,ouseja,nãopodeconternemumarraynem
umobjeto.Aassinaturadafunçãodefineéaseguinte:
intdefine(stringnome_da_constante,mixedvalor);
Afunçãoretornatrueseforbem-sucedida.

Operadores
•Aritméticos

Operadores
•Strings
Sóháumoperadorexclusivoparastrings:

Operadores
•Atribuição
Existeumoperadorbásicodeatribuiçãoediversosderivados.Sempre
retornamovaloratribuído.Nocasodosoperadoresderivadosde
atribuição,aoperaçãoéfeitaentreosdoisoperandos,sendoatribuídoo
resultadoparaoprimeiro.Aatribuiçãoésempreporvalor,enãopor
referência.

Operadores
•Atribuição
Exemplo:
$a=7;
$a+=2;//$apassaaconterovalor9

Operadores
•BitaBit
Comparamdoisnúmerosbitabit.

Operadores
•Lógicos
Utilizadosparainteirosrepresentandovaloresbooleanos.
Existemdoisoperadorespara“e”epara“ouporqueelestêmdiferentes
posiçõesnaordemdeprecedência

Operadores
•Comparação
Ascomparaçõessãofeitasentreosvalorescontidosnasvariáveis,enãoas
referências.Sempreretornamumvalorbooleano.

Operadores
•ExpressãoCondicional
Existeumoperadordeseleçãoqueéternário.Funcionaassim.
(expressao1)?(expressao2):(expressao3)
ointerpretadorPHPavaliaaprimeiraexpressão.Seelaforverdadeira,a
expressãoretornao
valordeexpressão2.Senão,retornaovalordeexpressão3.

Operadores
•Incrementooudecremento
Podemserutilizadosdeduasformas:antesoudepoisdavariável.Quando
utilizadoantes,retornaovalordavariávelantesdeincrementá-laou
decrementá-la.Quandoutilizadodepois,retornaovalordavariáveljá
incrementadooudecrementado.

Operadores
Exemplos
$a=$b=10;//$ae$brecebemovalor10
$c=$a++;//$crecebe10e$apassaater11
$d=++$b;//$drecebe11,valorde$bjáincrementado

Estruturas de Controle
•Condicional(if)
Estainstruçãopermiteexecutarcomandosoublocosdecomandoscom
baseemtestesfeitosduranteaexecução.
Sintaxe:
if(<condição>)
{
<comandos>;
}

Estruturas de Controle
•Condicional(if...else...)
Sintaxe:
if(<condição>)
{
<comandos>;
}
else
{
<comandos>;
}

Estruturas de Controle
•Condicional(if...elseif...else...)
Sintaxe:
if(<condição>)
{
<comandos>;
}
elseif(<condição>)
{
<comandos>;
}
else
{
<comandos>;
}
Épermitidoinserir
diversos“elseif”,mas
“else”ésomenteUMpor
estrutura.

Estruturas de Controle
Exemplos:
if($a>$b){
$maior=$a;
}
if(expressao1){
comando1;
}
else{
if(expressao2){
comando2;
}
else{
if(expressao3){
comando3;
}
else{
comando4;
}
}
}
if(expressao1){
comando1;
}
elseif(expressao2){
comando2;
}
elseif(expressao3){
comando3;
}
else{
comando4;
}
if($a>$b){
$maior=$a;
}
else{
$maior=$b;
}

Estruturas de Controle
•Condicional(switch...case...)
Ocomandoswitchatuademaneirasemelhanteaumasériedecomandos
ifnamesmaexpressão.Freqüentementeoprogramadorpodequerer
compararumavariávelcomdiversosvalores,eexecutarumcódigo
diferenteadependerdequalvaloréigualaodavariável.Quandoissofor
necessário,deve-seusarocomandoswitch.Oexemploseguintemostra
doistrechosdecódigoquefazemamesmacoisa,sendoqueoprimeiro
utilizaumasériedeif’seosegundoutilizaswitch:

Estruturas de Controle
•Condicional(switch...case...)
Sintaxe:
switch(<variável>){
case<valor>:{
<comandos>;
break;
}
default{
<comandos>;
break;
}
Épermitidoinserir
diversos“case”,mas
“default”ésomenteUM
porestrutura.

Estruturas de Controle
Exemplos:
switch($i){
case0:{
print“iéigualazero”;
break;
}
case1:{
print“iéigualaum”;
break;
}
default:{
print“Númeroinválido”;
break;
}
}
switch($i){
case0:{
print“iéigualazero”;
break;
}
case1:{
print“iéigualaum”;
break;
}
}

Estruturas de Controle
•Repetição(while/do...while...)
Owhileéocomandoderepetição(laço)maissimples.Eletestauma
condiçãoeexecutaumcomando,ouumblocodecomandos,atéquea
condiçãotestadasejafalsa.Assimcomooif,owhiletambémpossuiduas
sintaxesalternativas:

Estruturas de Controle
•Repetição(while/do...while...)
Sintaxe:
while(<condição>)
{
<comandos>;
<incremente/decremento>;
}
do
{
<comandos>;
<incremente/decremento>;
}
while(<condição>);

Estruturas de Controle
Exemplos:
$i=0;
do{
print$i;
$i++;
}
while($i<10);
$i=1;
while($i<=10){
print$i;
$i++;
}

Estruturas de Controle
•Repetição(for...)
Otipodelaçomaiscomplexoéofor.ParaosqueprogramamemC,C++ou
Java,aassimilaçãodofuncionamentodoforénatural.Masparaaqueles
queestãoacostumadosalinguagenscomoPascal,háumagrande
mudançaparaousodofor.Astrêssintaxespermitidassão:
Sintaxe:
for(<inicio>;<condição>;<incremento/decremento>){
<comandos>;
}

Estruturas de Controle
Astrêsexpressõesqueficamentreparêntesestêmasseguintesfinalidades:
Inicialização:comandoouseqüênciadecomandosaseremrealizados
antesdoiniciodolaço.Serveparainicializarvariáveis.
Condição:Expressãobooleanaquedefineseoscomandosqueestão
dentrodolaçoserãoexecutadosounão.Enquantoaexpressãoforverdadeira
(valordiferentedezero)oscomandosserãoexecutados.
Incremento/decremento:Comandoexecutadoaofinaldecadaexecução
dolaço.Umcomandoforfuncionademaneirasemelhanteaumwhileescrito
daseguinteforma:

Estruturas de Controle
<inicialização>
while(<condição>){
<comandos>;
<incremento/decremento>;
}

Funções
•function
QualquercódigoPHPválidopodeestarcontidonointeriordeumafunção.
ComoachecagemdetiposemPHPédinâmica,otipoderetornonãodeve
serdeclarado,sendonecessárioqueoprogramadorestejaatentoparaque
afunçãoretorneotipodesejado.Érecomendávelqueestejatudobem
documentadoparafacilitaraleituraecompreensãodocódigo:
Sintaxe:
function<nome-da-função>([<arg1>,<arg2>,<arg3>,...]){
<comandos>;
return<retorno-da-função>;
}

Funções
•Valorderetorno
QualquercódigoPHPválidopodeestarcontidonointeriordeumafunção.
ComoachecagemdetiposemPHPédinâmica,otipoderetornonãodeve
serdeclarado,sendonecessárioqueoprogramadorestejaatentoparaque
afunçãoretorneotipodesejado.Érecomendávelqueestejatudobem
documentadoparafacilitaraleituraecompreensãodocódigo:

Funções
•Argumentos
Épossívelpassarargumentosparaumafunção.Elesdevemserdeclarados
logoapósonomedafunção,entreparênteses,etornam-sevariáveis
pertencentesaoescopolocaldafunção.Adeclaraçãodotipodecada
argumentotambéméutilizadaapenasparaefeitodedocumentação.
Exemplo:
functionimprime($texto) {
echo$texto;
}
imprime(“teste de funções”);

Funções
•isset
Retornatrueseavariávelestiversetada(aindaquecomumastringvazia
ouovalorzero),efalseemcasocontrário.
Sintaxe:
isset(<variável>);
Exemplo:
if(isset($valor)) {
echo$valor;
}

Arrays
•Multidimensionais
Arraysmultidimensionaissãoarrayssimplescomumdos(outodos)seus
elementossendooutroarrayeassimconsecutivamente.
Exemplo:
$Campeao[5] = 123456789;
$Tricampeao[“casa”] = $Campeao;
$Tricampeao[“predio”] = 19191919;
$Brasil[1] = $Tricampeao;
$Brasil[2] = “Bicampeao”;
$Brasil[“copa”] = $Tricampeao;
$Brasil[4] = “Tetracampeao”;
$Brasil[“mundo”] = “Pentacampeao”;

Arrays
Exemplos:
echo$Campeao[5];//resultará123456789Arraysimples
echo$Brasil[1][“casa”][5];//resultará19191919Arraytridimensional
echo$Tricampeao[“casa”][5];//resultará123456789Arraybidimensional
echo$Brasil[“copa”][“predio”];//resultará19191919Arraybidimensional

Cookies
Cookiessãomecanismosparaarmazenareconsultarinformaçõesnosbrowsersdos
visitantesdapágina.OPHPatribuicookiesutilizandoafunçãosetcookie,quedeve
serutilizadaantesdatag<html>numapágina.
Ousodecookiesnãoérecomendadoquandosetratadeinformaçõessigilosas.Os
dadosdoscookiessãoarmazenadosnodiretóriodearquivostemporáriosdo
visitante,sendofacilmentevisualizadoporpessoasmalintencionadas.
Alémdaopção“aceitarcookies”quepodeserdesativadaaqualquermomentopelo
visitante.
Paraumatransmissãodedadosseguraérecomendávelousodesessões(ver
adiante).

Cookies
Setcookie(“nome_do_cookie”,”seu_valor”,”tempo_de_vida”,”path”,”domínio”
,”conexão_segura”)
Nome_do_cookie=Éonomeque,posteriormente,setornaráavariáveleoqueo
servirádereferênciaparaindicarocookie.
Seu_valor=Éovalorqueavariávelpossuirá.Essevalorpodeserdetodosostipos.

Cookies
Tempo_de_vida=Éotempo,emsegundos,queocookieexistiráno
computadordovisitante.Umavezexcedidoesseprazoocookieseapagade
modoirrecuperável.Seesseargumentoficarvazio,ocookieseapagará
quandoovisitantefecharobrowser.
Path=endereçodapáginaquegerouocookie–automático
Domínio=domínioaoqualpertenceocookie–automático
Conexão_segura=Indicaseocookiedeverásertransmitidosomenteemuma
conexãoseguraHTTPS.

Session
Sessõessãomecanismosmuitoparecidoscomostradicionaiscookies.Suas
diferençassãoquesessõessãoarmazenadasnopróprioservidorenãoexpirama
menosqueoprogramadorqueiraapagarasessão.
Osession_destroy()sódeveserusadoquandofordavontadedoprogramadoracabarcom
todosassessõesdaquelevisitante,portantomuitocuidadocomessafunção.
Função Argumentos
session_start() Não precisa de argumento
session_register() A variável sem o cifrão
session_unregister() A variável sem o cifrão
session_is_registered A variável sem o cifrão

Require
Afunçãorequirepõeoconteúdodeumoutroarquivonoarquivophpatual,
antesdeserexecutado.QuandoointerpretadordoPHPlerestearquivo,ele
encontrarátodooconteúdodos“require´s”adicionadonoarquivocorrente.
require(“nomedoarquivo”);
Criandoohábitodeusaressafunção,oprogramadorpodeviraencontrarum
errodearquivojádeclarado.Paraevitarissoérecomendávelquesemprequea
funçãorequireforutilizadaelasejasubstituídapelafunçãorequire_once.
require_once(“nome_do_arquivo“);

Banco de Dados
•BancodeDadoscompatíveis
OsbancosdedadosatualmentesuportadospeloPHPsão:AdabasD,
dBase,mSQL,InterBase,SyBase,Empress,MySQL,Velocis,FilePro,
Oracle,dbm,Informix,PostgreSQL.

Biblioteca de Funções
•Bibliotecasrequeridas
Paraquesepossautilizaressasfunçõeséprecisoterinstalado,noservidor,
asseguintesbibliotecas:
Módulo do PHP Onde encontrar
LDAP ftp://ftp.openldap.org/pub/openldap/
ftp://terminator.rs.itd.umich.edu/ldap/
ftp://ftp.critical-angle.com/pub/cai/slapd/
BerkleyDB2 http://www.sleepycat.com/

Biblioteca de Funções
•Bibliotecasrequeridas
Módulo do PHP Onde encontrar
SNMP http://www.ece.ucdavis.edu/ucd-snmp/
GD http://www.boutell.com/gd/#buildgd
mSQL http://www.hughes.com.au/
MySQL http://www.mysql.com/
IMAP ftp://ftp.cac.washington.edu/imap/
FreeType(libttf) http://www.freetype.org
Zlib http://www.cdrom.com/pub/infozip/zlib

Biblioteca de Funções
•Bibliotecasrequeridas
Módulo do PHP Onde encontrar
ExpatXML parserhttp://www.jclark.com/xml/expat.html
PDFlib http://www.ifconnection.de/~tm/
mcrypt ftp://argeas.cs-net.gr/pub/unix/mcrypt/
mhash http://sasweb.de/mhash/
t1lib http://www.neuroinformatik.ruhr-
unibochum.de/ini/PEOPLE/rmz/t1lib.html
Dmalloc http://www.dmalloc.com/
Aspell http://metalab.unc.edu/kevina/aspell/

Biblioteca de Funções
•array
Retornaumarraydeparâmetros.Índicespodemseratribuídosaos
parâmetrosatravésdooperador.
array(<opções>);
Exemplo:
$arr=array(“palavras”=>array(“1”=>“index”,”2”=>“main“,”3”=>
“default”),”tradução”=>array(“índice”,”principal”,”padrão”));

Biblioteca de Funções
•array_keys[PHP4]
Retornaosíndicesdeumarray.
arrayarray_keys(arraymatriz);
•array_merge[PHP4]
Retornaumarrayresultantedaconcatenaçãodedoisoumaisarrays.
array_merge(arraymatriz1,arraymatriz2,[<opções>]);

Biblioteca de Funções
•Date
Retornaumadatanoformatoespecificado
Stringdate(stringformato,int[datahora]);
Argumento Descrição
Data Data/hora a ser formatada. Se não for especificada utilizará
a data/hora corrente.
Formato Stringcom caracteres de formatação de datas.
Tags