ALTE DOCUMENTE
|
||||||
Variabilele
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
$nume_variabila="valoare"
Un exemplu scurt de folosire a unei variabile:
<?php
$program="PHP";
echo $program;
?>
Se va afisa cuvantul PHP.
sau
<?php
$salariu="10000";
echo "In septembrie am castigat ".$luna;
?>
Scriptul va afisa: In septembrie am castigat 10000.
Dupa stocarea datelor intr-o variabila (adica dupa ce unei
variabile i-a fost atribuita o valoare), dat 656i86g a sau variabila respectiva
poate fi modificata, afisata in browserul web, salvata intr-o baza de date,
trimisa prin posta electronica.
Variabilele formular
In PHP puteti recunoaste numele de variabila deoarece toate incep cu simbolul
$(dolar). (omiterea simbolului dolar este o eroare de programare ce se
intalneste foarte des).
Exista trei metode de a accesa datele formularului prin intermediul
varabilelor. Aceste metode nu au nume oficiale, deci le vom intitula noi.
Ex. variabila angajati:
$angajati // stilul scurt
exemple:
a)
<?php
$temperatura=-5;
$vant=8.5;
echo "La Sinaia sunt $temperatura grade iar vantul bate cu $vant
m/s";
?>
Se va afisa: La Sinaia sunt -5 grade iar vantul bate cu 8.5 m/s.
b) <?php
$strada="minulescu";
$oras="Bucuresti";
$tara="Romania";
echo "adresa este strada $strada oras $oras tara
$tara";
?>
Afiseaza:
adrsa este strada minulescu oras Bucuresti tara Romania
Constante
. au o valore, dar spre deosebire de variabile nu poate fi
schimbata sau stearsa si nu sunt precedate de simbolul $
. numele este case sensitiv si va incepe obligatoriu cu o
litera. Poate contine litere mari sau mici, cifre si caracterul _ dar fara
spatii
. este recomandat, dar nu obligatoriu, ca denumirea
constantei sa fie scrisa cu majuscule pentru a fi mai usor identificata de
programator
. ca si in cazul variabilelor superglobale constantele au un
caracter global.
<?php
define('NUME','Popescu');
echo NUME;
?>
</FORM>
</BODY>
</HTML>
Daca formularul a fost trimis prin metoda POST atunci data introdusa in campul
angajati va fi stocata in $_POST['angajati']. Daca formularul va fi trimis prin
GET, atunci data se va afla in $_GET['angajati']. In fiecare situatie data va
fi disponibila in $_REQUEST['angajati'].
Tipuri de variabile
Variabilele sunt de mai multe tipuri: numere, siruri, matrici.
Numere
PHP imparte numerele in doua tipuri: intregi si cu virgula mobila.
Numerele intregi pot fi: pozitive si negative.
Numere corecte in PHP:
1 - intreg
-1 - intreg
1.0 - cu virgula mobila
-1.0 - cu virgula mobila
16.99 - cu virgula mobila
Numere incorecte in PHP:
1 ¼; 19722a; 02.09,08
Siruri
O variabila este un sir daca este alcatuita din caractere (o combinatie de
litere, numere, simboluri, spatii) delimitate intre doua ghilimele simple (')
sau duble (").
Siruri corecte:
"Buna dimineata!"
"Buna $prenume"
"1 ¼"
"02.07.90"
Sir incorect:
"Am spus "ce mai faci?" "
Matrice
Vom face o scurta descriere, deoarece sunt analizate pe larg in capitolul
"Matrici'
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');
Sunt doua tipuri de matrici: matrice indexata (foloseste numere pe post de
chei) si matrice asociativa (foloseste siruri pe post de chei).
Exemplu:
a) <?php
$matrice = array('ocean','mare','lac');
print_r ($matrice);
?>
b) 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);
?>
Pentru a sterge o pereche cheie/valoare se foloseste unset()
unset($matrice[3]); //sterge cheia 3 din matrice
unset($matrice); //sterge intreaga 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 |
Atribuirea
de valori variabilelor
Pentru a atribui o valoare unei variabile, indiferent de tipul variabilei,
folositi semnul (=). Semnul egal poarta numele de operator de atribuire.
Exemplu:
$numar=1;
$numar_zecimal=2.3;
$sir="buna dimineata"
Pentru a afisa valoarea unei variabile, se include numele acesteia intr-o
instructiune print(), folosind ghilimele duble:
print "Numarul este $numar";
print "Sirul este $sir";
<html>
<body>
<?php
Multumim $title $nume $prenume pentru interesul aratat sitului nostru.
?>
</body>
</html>
Toate variabilele descrise mai sus sunt salvate in baza de date, dar aceasta este
un curs separat, MYSQL.
Register_globals
Una din modificarile majore ale limbajului PHP. Incepand de la versiunea 4.2
autorii au decis sa modifice una dintre cele mai importante caracteristici ale
limbajului, denumita register_globals.
Daca aceasta caracteristica este activata, datele sin formular sunt
stocate in mod automat in variabile cu nume simple, precum $nume sau $email. Cu
alte cuvinte, datele din formular sunt inregistrate sub forma unei variabile
globale in cadrul scriptului. Daca register_globals este dezactivata acestor
variabile nu li se atribuie in mod automat valorile din formular si, ca atare,
raman vide. Va trebui ca in loc de $variabila
sa scrieti $_POST['var'].
Operatori
Operatorii sunt simbolurile pe care le puteti folosi pentru a maneva valori si
variabile prin realizarea unei operatii asupra lor.
Operatorii sunt de mai multe feluri:
1. operatori aritmetici
Operator |
Nume |
Exemplu |
adunare |
$a + $b |
|
scadere |
$a - $b |
|
inmultire |
$a * $b |
|
impartire |
$a / $b |
|
modulo |
$a % $b |
Pentru fiecare dintre acesti
operatori putem stoca rezultatul operatiei.
|