Variabila este un container de
date care poarta un nume si i se
poate atribui o valoare care
poate fi modificata de mai multe
ori sau salvata intr-o baza de
date. Numele dat variabilei
incepe cu simbolul $ urmat de
orice litera mica (a-z) sau mare
(A-Z) sau cu caracterul _ dar
niciodata cu o cifra si nu poate
contine spatii goale. De exemplu:
$nume_variabila
Este recomandat ca numele
variabilei sa fie cat mai sugestiv
pentru a evita incurcaturile in
timpul scrierii scriptului.
Exemplu: atribuim variabilei
$program valoarea PHP si apoi o
tiparim
<?php
$program="PHP";
echo $program;
?>
Exemplu: in aceeasi constructie
echo putem folosi text impreuna
cu o variabila
<?php
$luna="iulie";
echo "Am concediu in luna ".
$luna."";
?>
Modificand valoarea variabilei se
modifica ceea ce este afisat de
browser.
Intr-un script puteti folosi mai
multe variabile care pot fi
adaugate in aceeasi constructie
echo.
Exemplu:
<?php
$ziua="22";
$luna="12";
$anul="1995";
echo "Data nasterii este ".
$ziua.".".$luna.".".$anul."";
?>
In PHP sunt opt tipuri de
variabile primitive:
patru tipuri scalare: intregi,
numere cu virgula flotanta, siruri
si boleene
doua tipuri compuse: matrice si
obiecte
doua tipuri speciale: resurse si
NULL
Intreg (integer) este un simplu
numar intreg exprimat in sistem
zecimal, hexazecimal sau octal,
optional putand purta si semn (+
sau -).
In sistem octal numarul trebuie
precedat de 0 iar pentru
hexazecimal precedat de 0x.
$a=2006; //numar exprimat in
sistem zecimal
$a=-52; //numar negativ
exprimat in sistem zecimal
$a=0135; //numar octal
(echivalent cu 207 zecimal)
$a=0x1D; //numar hexazecimal
(echivalent cu 29 zecimal)
Numerul cu virgula flotanta
(float) sau dubla precizie este un
numar real care poate fi folosit
cu urmatoarea sintaxa:
$a=3.14; //numar zecimal
$a=-2.59; //numar zecimal
negativ
$a=1.3e2; //130
$a=6E+3; //6000
Exemplu:
<?php
$temperatura=-5;
$vant=8.5;
echo "La Sinaia sunt ".
$temperatura."<sup>o</sup>C
iar vantul bate cu ".$vant."m/s";
?>
Sirul (string) este o variabila
care contine o combinatie de
numere, litere, simboluri si spatii
delimitate intre doua ghilimele
simple sau duble. Sirurile pot
contine si nume de variabile.
Exemplu:
<?php
$nume="Ivan Paul";
$data="19 iulie 2005";
echo "Solicitarea a fost facuta de
domnul ".$nume." pe data de ".
$data."";
?>
Cea mai simpla cale pentru a
specifica un sir este sa il
incadram intre ghilimele simple
(') dar eventualele ghilimele
simple continute vor fi
precedate de caracterul \. In
aceasta situatie variabilele si
caracterele speciale vor fi
ignorate.
echo "acesta este un sir"; //
acesta este un sir
echo "variabila $a"; //variabila $a
echo "rand1
rand2"; //rand1
rand2
Daca sirul este definit prin
ghilimele duble (") PHP-ul
interpreteaza mai multe
secvente pentru caracterele
speciale:
Secventa Semnificatie
rand nou
\r sfarsit de linie
tab orizontal
\\ backslash
\$ simbol dolar
\" ghilimele duble
Variabila boleana exprima
valoarea de adevar: TRUE sau
FALSE. Orice valoare diferita de
zero sau sir care nu este gol
(contine cel putin un caracter)
sunt considerate ca TRUE.
Matricei (array) i se pot atribui
mai multe valori comparativ cu
numerele sau sirurile care pot
contine doar o singura valoare.
Matricele folosesc chei sau
indexi pentru a identifica
valorile stocate.
O matrice se creaza folosind
functia array():
$matrice = array
('apa','aer','foc');
Exemplu: cream o matrice si ii
tiparim elementele folosind
functia print_r
<?php
$matrice = array
('ocean','mare','lac');
print_r ($matrice);
?>
Exemplu: utilizam aceeasi
matrice dar folosim functia
var_dump() care ne arata cate
elemente sunt in matrice si
lungimea fiecarei valori a sa
<?php
$matrice = array
('ocean','mare','lac');
var_dump ($matrice);
?>
Primul index al unei matrici are
valoarea 0. Valorile indexilor pot
fi si declarate manual.
Exemplu: cream o matrice cu
indexii 1, 3 si 5
<?php
$matrice = array
(1=>'calculator',3=>'monitor',5=>'imprimanta');
var_dump ($matrice);
?>
Pentru a sterge o pereche cheie/
valoare se foloseste unset()
unset($matrice[3]); //sterge
cheia 3 din matrice
unset($matrice); //sterge
intreaga matrice
Exemplu: stergem elementul 3
din matricea $matrice
<?php
$matrice = array
(1=>'Matematica',2=>'Fizica',3=>'Biologie',4=>'Istorie');
unset($matrice[3]); //sterge
cheia 3 Biologie
print_r ($matrice);
?>
Variabile predefinite
PHP ofera un mare numar de
variabile predefinite oricarui
script care ruleaza si sunt
functie de serverul pe care
functioneaza.
Incepand cu PHP 4.2.0 valoarea
default pentru directiva
register_globals este off.
Aceasta afecteaza setul de
variabile predefinite disponibile
in scop global.
De exemplu pentru a obtine
DOCUMENT_ROOT vom folosi
$_SERVER['DOCUMENT_ROOT'] in
loc de $DOCUMENT_ROOT cum era
in cazul in care register_globals
erau on.
PHP Superglobals sunt
variabile disponibile oriunde in
script
$GLOBALS contine referinte catre toate
variabilele care sunt disponibile
in scop global scriptului
$_SERVER variabile furnizate scriptului de
catre serverul web
$_GET variabile furnizate scriptului via
HTTP GET (provin dintr-un
formular in care method="GET")
$_POST variabile furnizate scriptului via
HTTP POST (provin dintr-un
formular in care method="POST")
$_COOKIE variabile furnizate scriptului via
HTTP cookies
$_ENV variabile furnizate scriptului de
catre mediu
In continuare voi prezenta
cateva din cele mai des folosite
variabile globale.
$_SERVER['REMOTE_ADDR'] Exemplu: adresa IP a
vizitatorului
$_SERVER['HTTP_USER_AGENT'] Exemplu: informatii despre
browserul folosit
$_SERVER['HTTP_REFERER'] Exemplu: pagina vizitata
anterior
$_SERVER['SERVER_NAME'] Exemplu: numele serverului
$_SERVER['SCRIPT_NAME'] Exemplu: numele scriptului
Scopul variabilelor depinde de
contextul in care sunt definite.
Majoritatea variabilelor din PHP
au un singur scop. Acesta se
aplica si pentru fisierele
adaugate prin functiile include
() si require().
Exemplu:
<?php
$a=10;
include "exemplu1_9b.php";
?>
/* urmeaza fisierul
exemplu1_9b.php */
<?php
echo "Mihai are ".$a." ani";
?>
Orice variabila folosita in
interiorul unei functii este
limitata doar scopului functiei.
Exemplu: deoarece functia
foloseste o variabila declarata in
afara ei echo nu va afisa nimic
<?php
$a=10;
function mihai() {
echo "Mihai are ".$a." ani";
}
mihai();
?>
Exemplu: aceeasi functie dar
acum declaram variabila de tip
global motiv pentru care echo va
afisa corect
<?php
$a=10;
function mihai() {
global $a; //declaram variabila $a
de tip global
echo "Mihai are ".$a." ani";
}
mihai();
?>
Variabile statice
O alta caracteristica importanta
a scopului variabilei este
variabila statica care exista
doar in scopul functiei locale dar
isi pierde valoarea cand executia
scriptului inceteaza.
Exemplu: executarea succesiva a
functiei va afisa tot timpul 0
<?php
function static1() {
$a=0;
echo $a;
$a++;
}
static1();
echo "<br>";
static1();
echo "<br>";
static1();
?>
Exemplu: aceeasi functie dar
declaram variabila ca fiind
statica. De cate ori functia va fi
executata ea va incrementa
valoarea anterioara a variabilei
$a
<?php
function static1() {
static $a=0;
echo $a;
$a++;
}
static1();
echo "<br>";
static1();
echo "<br>";
static1();
?>
Variabile variabile
Cateodata este util sa avem
nume variabil pentru variabila
Exemplu:
<?php
$a="Mihai";
$$a="Ionescu";
echo "$a $Mihai";
?>
Exista functii care determina
tipul variabilei.
Exemplu: verificam daca
variabila $a este de tip intreg
<?php
$a=19;
if (is_integer($a)) {
echo '$a este intreg';
} else {
echo '$a nu este intreg';
}
?>
Exemplu: verificam daca
variabila $a este de tip numar cu
virgula flotanta
<?php
$a=3.14;
if (is_float($a)) {
echo '$a este numar cu virgula
flotanta';
} else {
echo '$a nu este numar cu
virgula flotanta';
}
?>
Exemplu: verificam daca
variabila $a este de tip sir
<?php
$a="sir";
if (is_string($a)) {
echo '$a este un sir';
} else {
echo '$a nu este un sir';
}
?>
Exemplu: verificam daca
variabila $a este o matrice
<?php
$a = array
('fructe','legume','carne');
if (is_array($a)) {
echo '$a este o matrice';
} else {
echo '$a nu este o matrice';
}
?>
Kompresi ON : (100%) Loads page : seconds YOUR COUNTER Editing by Alex Script files by ROVip