View
35
Download
0
Category
Preview:
Citation preview
TEHNOLOGII WEB
Universitatea “Constantin Brâncuşi” din Târgu-Jiu
Lect.dr. Adrian Runceanu
copyright@www.adrian.runceanu.ro
Curs 7
PHP (Php: Hypertext Preprocessor)
(partea I)
28.03.2016 Tehnologii WEB - curs 2
copyright@www.adrian.runceanu.ro
Curs 7
1. Elemente de bază ale limbajului PHP2. Tipuri de date 3. Variabile. Constante. Operatori
28.03.2016 Tehnologii WEB - curs 3
copyright@www.adrian.runceanu.ro
1. Elemente de bază ale limbajului PHP
Sintagma tehnologii pentru server se referăîn special la serverele de aplicaţii utilizate în scopul furnizării de conţinut dinamic în Web.
Dintre acestea, PHP (acronim recursiv pentru PHP: Hypertext Preprocessor), realizat şi distribuit în regim open source, este cel mai des folosit.
28.03.2016 Tehnologii WEB - curs 4
copyright@www.adrian.runceanu.ro
Prin PHP se înţelege atât limbajul de scripting, cât şi serverul de aplicaţii, cel din urmă având rolul de a procesa şi interpreta scripturile scrise utilizând acest limbaj.
Limbajul PHP este destinat în mod special pentru dezvoltare Web, codul PHP putând fi încapsulat în (X)HTML.
În ceea ce priveşte popularitatea printre limbajele de programare, PHP ocupă poziţia a treia, dupăC/C++ şi Java.
1. Elemente de bază ale limbajului PHP
28.03.2016 Tehnologii WEB - curs 5
copyright@www.adrian.runceanu.rohttp://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
29.03.2016 Tehnologii WEB - curs 6
copyright@www.adrian.runceanu.rohttp://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
28.03.2016 Tehnologii WEB - curs 7
copyright@www.adrian.runceanu.ro
1. Elemente de bază ale limbajului PHP
Spre deosebire de programele scrise intr-unul dintre limbajele pentru client (ex. JavaScript), codul PHP este interpretat pe server, utilizatorul primind - prin intermediul browserului Web - numai rezultatul obtinut, in diverse formate (XHTML).
28.03.2016 Tehnologii WEB - curs 8
copyright@www.adrian.runceanu.ro
Caracteristici (I)
Dintre caracteristicile generale ale limbajului / serverului de aplicatii PHP care il recomanda drept cel mai indicat pentru dezvoltarea aplicatiilor Web, pot fi mentionate urmatoarele:
este usor de invatat si utilizat ofera functionalitati complete este simplu de extins, diverse module si biblioteci
oferind posibilitatea ca PHP sa lucreze cu un numar mare de API-uri si alte tehnologii Web
au fost create un numar mare de medii de dezvoltare profesionale scrise în PHP, multe dintre ele fiind puse la dispozitia utilizatorului in regim open source
28.03.2016 Tehnologii WEB - curs 9
copyright@www.adrian.runceanu.ro
Caracteristici(II)
dispune de interfete pentru un numar mare de sisteme de gestiune a bazelor de date:OracleMicrosoft SQL ServerIBM DB2MySQLPostgresqlInformixSybaseprecum si pentru standardul ODBC
28.03.2016 Tehnologii WEB - curs 10
copyright@www.adrian.runceanu.ro
Caracteristici(III)
asigura suport pentru comunicatia cu servicii ce utilizeaza diverse protocoale, dintre care amintim:HTTPFTP (File Transfer Protocol) IMAP (Internet Message Access Protocol) POPS (Post Office Protocol version 3)COM (Component Object Model)LDAP (Lightweight Directory Access Protocol) SOAP (Simple Object Access Protocol)
28.03.2016 Tehnologii WEB - curs 11
copyright@www.adrian.runceanu.ro
Caracteristici(IV)
ofera suport pentru prelucrarea textului folosind expresii regulate
implementeaza diverse metode de procesare a documentelor XML: SAX - Simple API for XMLDOM - Document Object ModelXMLReader SimpleXML
oferind si posibilitatea transformarii acestora prin intermediul foilor de stil XSLT (XSL Transformations)
28.03.2016 Tehnologii WEB - curs 12
copyright@www.adrian.runceanu.ro
Caracteristici(V)
asigura suport pentru:generarea si prelucrarea imaginilorgestiunea sesiunilor (folosind variabile cookie si,
respectiv, variabile sesiune)instantierea obiectelor Java si utilizarea lor in mod
transparent ca obiecte PHPcomert electroniccrearea animatiilor FLASHetc.
28.03.2016 Tehnologii WEB - curs 13
copyright@www.adrian.runceanu.ro
De obicei, PHP este folosit ca modul inclus in procesul-server HTTP, iar in cazul in care serverul amintit suporta standardul CGI (Common Gateway Interface ), poate fi utilizat si ca procesor CGI.
Atunci cand browserul cere un fisier PHPserverului Web, acesta trimite cererea procesorului PHP, care efectueaza interpretarea scriptului si produce la iesirea standard continut in diverse formate:– precum sunt cele textuale (XHTML, XML)– grafice (GIF, JPEG, PNG) – sau PDF
28.03.2016 Tehnologii WEB - curs 14
copyright@www.adrian.runceanu.ro
Secventele de cod PHP sunt delimitate de un marcaj de start si de un marcaj de sfarsit (acestea sunt, in mod obisnuit, <?php si ?>), care determina intrarea/iesirea procesorului in/din "modul PHP".
28.03.2016 Tehnologii WEB - curs 15
copyright@www.adrian.runceanu.ro
Informatii utile Se pot obtine despre serverul de aplicatii PHP 5,
extensiile instalate in sistem odata cu acesta, prinintermediul functiei phpinfo().
28.03.2016 Tehnologii WEB - curs 16
Exemplu 1: Script-ul urmator afiseaza un mesaj. Va fi memorat sub numele de prim.php.
<?phpecho “primul script PHP”;
?>
28.03.2016 Tehnologii WEB - curs 17
copyright@www.adrian.runceanu.ro
Observatie foarte importanta!
Atunci cand se apeleaza un script, el este rulat pe server.
Acesta va efectua operatiile pe care le are programate si eventual, va scrie ceva (in exemplul anterior cu “echo”).
Rezultatul (adica ce este scris) este returnat catre browser, iar acesta il va trata ca pe un fisier html.
28.03.2016 Tehnologii WEB - curs 18
copyright@www.adrian.runceanu.ro
Exemplu 2: Executam script-ul urmator care contine cateva
elemente de formatare HTML.<?php
echo “Acesta este <b>primul</b> script <b><i>PHP</i></b>”;
?>
28.03.2016 Tehnologii WEB - curs 19
copyright@www.adrian.runceanu.ro
Vocabular, simboluri, expresii, instructiuni si comentarii
Sintaxa unui limbaj reprezinta totalitatea regulilor de scriere a programelor, astfel incat acestea sa fie acceptate de catre analizorul sintactic (numit si parser).
Aceste reguli se refera la: vocabularul simbolurile expresiile si instructiunile folosite modalitatile utilizate pentru definirea functiilor si claselor
O parte dintre elementele de sintaxa enumerate, referitoare la limbajul de programare PHP sunt analizate in continuare.
28.03.2016 Tehnologii WEB - curs 20
copyright@www.adrian.runceanu.ro
Vocabular
Limbajul PHP foloseste un vocabular format din urmatoarele componente: 1. caractere2. identificatori 3. separatori
1. Caracterele utilizate sunt incluse in setul de caractere al limbajului, acesta continand:
– literele majuscule si minuscule ale alfabetului (a-z, A-Z)– cifrele corespunzatoare sistemului de numeratie zecimal
(0-9)– caractere speciale: !, @, #, $, &, *,(,), -, _, :, ", ', {, }, [, ] si
spatiu
28.03.2016 Tehnologii WEB - curs 21
copyright@www.adrian.runceanu.ro
2. Identificatorii furnizeaza modalitati de denumire a datelor (adica, variabile si constante), functiilor, claselor, cuvintelor-cheie etc., fiind formati din urmatoarele caractere:
– cifre– litere – caracterul special liniuta de subliniere (underscore:
„_") Ca o regula generala, un identificator va incepe
intotdeauna cu o litera sau cu liniuta de subliniere.3. Separatorii delimiteaza intre ei identificatorii si pot fi:
– spatiul (blank)– caracterul punct si virgula („;") – virgula („,")
28.03.2016 Tehnologii WEB - curs 22
copyright@www.adrian.runceanu.ro
Cele mai mici constructii sintactice pe care le poate "intelege" interpretorul PHP sunt denumite simboluri (tokens, in limba engleza).
Acestea sunt reprezentate de: numere (0.753, 45, 8.56) siruri ("student") variabile ($student) constante (true, false) cuvinte-cheie (if, for, do, while, function, class, this,
public, protected, private, static, abstract)
Simbolurile sunt separate unele de altele prin spatii albe si prin unele caractere speciale (paranteze, acolade).
28.03.2016 Tehnologii WEB - curs 23
copyright@www.adrian.runceanu.ro
Expresii
Practic tot ceea ce se scrie in PHP reprezinta expresii.
Astfel, se spune ca PHP este un limbaj orientat pe expresii.
O expresie este orice combinatie de simboluri care are o valoare.
28.03.2016 Tehnologii WEB - curs 24
copyright@www.adrian.runceanu.ro
Cele mai simple expresii sunt constantele si variabilele.
Cand se scrie $x=20, se atribuie variabilei $x valoarea '20'.
In acest caz, '20' are valoarea 20 - adica '20' este o expresie avand valoarea 20 (in acest caz, 20 este o constanta intreaga).
In exemplul prezentat, se atribuie variabilei $x valoarea 20.
Astfel, $x este o expresie care - dupa atribuire - va avea valoarea 20.
Expresii
28.03.2016 Tehnologii WEB - curs 25
copyright@www.adrian.runceanu.ro
In general, o expresie de atribuire este o expresie in care valoarea unei variabile este rezultatul obtinut in urma evaluarii unei alte expresii.
In exemplul urmator, variabilei $douazeci îi este atribuita valoarea obtinuta in urma evaluarii expresiei: 2* (9+1):
$douazeci = 2*(9+1)
Expresii
28.03.2016 Tehnologii WEB - curs 26
copyright@www.adrian.runceanu.ro
De multe ori, expresia evaluata in vederea atribuirii valorii sale unei variabile, poate contine, la randul ei, alte variabile sau constante.
In aceasta situatie, valoarea unei variabile continute este egala cu cea atribuita anterior, ca in exemplul urmator in care valoarea variabilei $douazeci este egala cu 20:
$saizeci=10+2*($douazeci+5)
Expresii
28.03.2016 Tehnologii WEB - curs 27
copyright@www.adrian.runceanu.ro
Instructiuni
In PHP, instructiunea este o expresie urmata de caracterul punct si virgula („;"), ca in C, Perl sau Java.
O secventa de instructiuni valide, inclusa, de exemplu, intre marcajele <?php si ?> este un program (numit si script).
In mod obisnuit scripturile PHP se salveaza in fisiere cu extensia .php.
28.03.2016 Tehnologii WEB - curs 28
copyright@www.adrian.runceanu.ro
Desi instructiunile nu pot fi combinate ca si expresiile, ele pot fi incluse in grupuri, plasate intre acolade, ca in exemplul urmator:
<?php$numar=20;if ($numar>=0) {
echo "Radacina patrata a numarului $numareste:";
echo sqrt($numar); }elseecho "Numarul este negativ. Precizati unul pozitiv!";
?>
Instructiuni
28.03.2016 Tehnologii WEB - curs 29
copyright@www.adrian.runceanu.ro
Comentarii(I)
Ca si in alte limbaje de programare, scripturile PHPpot include comentarii, acestea fiind precizate in trei moduri:
1. in stilul Perl - comentariul se intinde pe o linie, fiind precedat de caracterul # (cu toate ca este valid, acest tip de comentariu este mai putin utilizat in PHP);
28.03.2016 Tehnologii WEB - curs 30
copyright@www.adrian.runceanu.ro
Comentarii(II)
2. in stilul JavaScript - comentariul se intinde pe o singura linie si este precedat de doua caractere slash succesive (//);
3. in stilul C - comentariul se poate intinde pe mai multe linii, fiind incadrat de secventele /* si */.
Comentariile din scripturi sunt ignorate de procesorul PHP, nefiind incluse rezultatul trimis browserului.
28.03.2016 Tehnologii WEB - curs 31
copyright@www.adrian.runceanu.ro
Curs 7
1. Elemente de bază ale limbajului PHP2. Tipuri de date 3. Variabile. Constante. Operatori
28.03.2016 Tehnologii WEB - curs 32
copyright@www.adrian.runceanu.ro
2. Tipuri de date
Limbajul PHP accepta opt tipuri de date, patru fiind scalare, doua compuse si alte doua speciale.
Tipurile scalare sunt: 1. logic (numit si boolean)2. sir de caractere (string) 3. intreg (integer) 4. dublu (double)
Ultimele doua reprezinta tipuri numerice.
28.03.2016 Tehnologii WEB - curs 33
copyright@www.adrian.runceanu.ro
Tipurile compuse sunt:tablou (array) obiect (object)
Tipurile speciale sunt: resursa (resource) null
Tipurile scalare impreuna cu tipul null se numesc tipuri simple.
Tipurile compuse pot impacheta un numar arbitrar de date, acestea din urma avand diverse tipuri (simple sau compuse).
2. Tipuri de date
28.03.2016 Tehnologii WEB - curs 34
copyright@www.adrian.runceanu.ro
1. Tipul întreg
Tipul intreg se refera la numerele intregi, negative sau pozitive (corespunde tipului long din C).
Acestea pot fi specificate in trei formate de citire, care corespund sistemelor de numeratie octal, zecimal si hexazecimal.
Formatul zecimal este implicit, iar cele octal si hexazecimal sunt precizate utilizand ca prefix cifra 0 (zero) si respectiv, secventa 0x (zero urmat imediatde litera x).
28.03.2016 Tehnologii WEB - curs 35
copyright@www.adrian.runceanu.ro
1. Tipul întreg
Orice format poate fi precedat de semnul - (minus),care arata ca numarul corespunzator este negativ.
Intervalul in care pot fi specificate numerele intregi in PHP depinde de - lungimea cuvantului pe masina utilizata.
Pentru cele mai multe platforme, limitele minima si maxima sunt:
-(231-1) (-2147483647) si, respectiv, (231-1) (2147483647).
28.03.2016 Tehnologii WEB - curs 36
copyright@www.adrian.runceanu.ro
2. Tipul dublu(I)
Tipul dublu se refera la numerele in virgula mobila.
Formatul de citire pentru aceste numere este -A.B, unde semnul optional - (minus) corespunde numerelor negative, iar A si B sunt secvente de cifre situate in intervalul [0,9].
28.03.2016 Tehnologii WEB - curs 37
copyright@www.adrian.runceanu.ro
2. Tipul dublu(II)
Secventa A poate fi omisa daca numerele sunt cuprinse intre -1.0 si 1.0 (-0.6518, 0.6518).
Numerele duble pot fi specificate utilizand si notatia stiintifica, adica adaugand formatului anterior litera e urmata de un intreg, care semnifica o putere a numarului 10 (numarul 2500.00 se poate scrie 2.5e+3).
28.03.2016 Tehnologii WEB - curs 38
copyright@www.adrian.runceanu.ro
3. Tipul logic(I)
Tipului logic (sau boolean) îi corespund valorile true si false. Acestea pot fi utilizate, de exemplu, in instructiunile de
control (if) pentru a specifica valoarea de adevar a expresieide test.
Pentru a evalua valoarea de adevar a unei expresii care nu are tipul logic, se impun urmatoarele reguli:– daca valoarea expresiei este un numar, atunci 0 va fi
asimilat valorii false. – In caz contrar, numarul va fi asimilat valorii true;– daca valoarea expresiei este un sir, acesta va fi asimilat
valorii false in cazul in care este vid (adică, nu continenici un caracter) si true, in caz contrar;
28.03.2016 Tehnologii WEB - curs 39
copyright@www.adrian.runceanu.ro
3. Tipul logic(II)
– valoarea null va fi asimilata intotdeauna valorii false;
– daca tipul valorii expresiei este compus (adică, tablou sau obiect), aceasta va fi asimilata valorii false daca nu contine nici o valoare si true in caz contrar (a nu contine nici o valoare inseamna pentru tipul tablou a nu avea nici un element, iar pentru tipul obiect a nu include nici o proprietate cu o valoare atribuita);
– daca valorile de tip resursa sunt valide, vor fi asimilate valorii true.
28.03.2016 Tehnologii WEB - curs 40
copyright@www.adrian.runceanu.ro
4. Tipul şir de caractere(I)
Tipul sir de caractere reprezinta secvente de caractere.
Un sir trebuie inclus între ghilimele sau apostrofuri.
Diferenta dintre aceste modalitati de includere se manifesta in momentul procesarii.
28.03.2016 Tehnologii WEB - curs 41
copyright@www.adrian.runceanu.ro
4. Tipul şir de caractere(II)
Astfel, daca se utilizeaza apostrofuri, sirul este tratat literal, in cele mai multe cazuri (pentru exceptii, vezi primele doua reguli prezentate in continuare), in vreme ce, daca se utilizeaza ghilimele, variabilele incluse in sir vor fi - in prealabil - evaluate, ca in exemplul urmator:
<?php$limbaj="PHP";echo "Limbajul meu preferat este $limbaj<br />";
// Se afiseaza Limbajul meu preferat este PHP
echo 'Limbajul meu preferat este $limbaj';// Se afiseaza Limbajul meu preferat este $limbaj
?>28.03.2016 Tehnologii WEB - curs 42
copyright@www.adrian.runceanu.ro
5. Tipul resursă(I)
Tipul resursa este un tip special de date, fiind asociat rezultatelor intoarse de unele functii definite de cateva extensii PHP.
De exemplu, in cazul extensiei mysql, aceste functii pot realiza operatii ca: – deschiderea fisierelor– deschiderea conexiunii cu un server de baze de
date – interogarea bazelor de date
28.03.2016 Tehnologii WEB - curs 43
copyright@www.adrian.runceanu.ro
5. Tipul resursă(II)
Variabilele avand tipul resursa pot fi transmise unor functii, in scopul prelucrarii rezultatelor asociate acestora, dupa cum vom studia la sistemul de gestiune a bazelor de date mysql.
28.03.2016 Tehnologii WEB - curs 44
copyright@www.adrian.runceanu.ro
Curs 7
1. Elemente de bază ale limbajului PHP2. Tipuri de date 3. Variabile. Constante. Operatori
28.03.2016 Tehnologii WEB - curs 45
copyright@www.adrian.runceanu.ro
3. Variabile(I)
Principala modalitate de stocare temporara a datelorîntr-un script PHP este - reprezentata de utilizareavariabilelor.
In alcatuirea si utilizarea acestora trebuie respectateurmatoarele reguli:– sunt precedate intotdeauna de simbolul dolarului ($)– numele lor incepe cu o litera sau cu caracterul
underscore, pot contine oricate caractere alfanumerice si liniute de subliniere si sunt case sensitive, adica sensibile la diferenta dintre minuscule si majuscule (exemplu, $ovariabila si $OVariaBILa sunt variabile diferite)
28.03.2016 Tehnologii WEB - curs 46
copyright@www.adrian.runceanu.ro
3. Variabile(II)
Spre deosebire de alte limbaje (C, C++, Java), nu este obligatorie declararea variabilelor PHP inainte de atribuire.
Altfel spus, primul pas in utilizarea unei variabile PHP este atribuirea unei valori
valoarea unei variabile este rezultatul celei mai recente atribuiri
28.03.2016 Tehnologii WEB - curs 47
copyright@www.adrian.runceanu.ro
tipul unei variabile este tipul valorii cel mai recent atribuite (neexistand unul intrinsec), insemnand ca acesta se poate modifica la oricare noua atribuire.
Spre deosebire de alte limbaje de programare des utilizate (C, Java), PHP nu asigura suportul pentru variabile globale.
3. Variabile(III)
28.03.2016 Tehnologii WEB - curs 48
copyright@www.adrian.runceanu.ro
Trebuie mentionat, totusi, ca exista posibilitatea utilizarii in corpul functiilor a variabilelor definite in script, folosindu-se tabloul $GLOBALS, in care cheile elementelor reprezinta numele variabilelor.
Cu toate ca PHP nu suporta variabilele globale, exista un numar de variabile tablou predefinite, cunoscute sub denumirea de tablouri superglobale, al caror comportament este similar cu cel al variabilelor globale utilizate in alte limbaje de programare.
3. Variabile(IV)
28.03.2016 Tehnologii WEB - curs 49
copyright@www.adrian.runceanu.ro
Astfel, aceste tablouri pot fi accesate in orice punct al scriptului, inclusiv in interiorul metodelor si functiilor.
Alaturi de tabloul superglobal $GLOBALS, din categoria respectiva mai fac parte:
1. $_GET si $_POST – contin toate datele get si, respectiv, post primite de PHP de la browser;
2. $_COOKIE - include toate cookie-urile primite de PHP de la browser;
3. Variabile(V)
28.03.2016 Tehnologii WEB - curs 50
copyright@www.adrian.runceanu.ro
Variabilele globale pot fi accesate automat de oriunde, inclusiv din interiorul functiilor.
• s_REQUEST - contine toate variabilele GET, POST si COOKIE primite de PHP de la browser
• s_SERVER - include valorile variabilelor setate de server sau pe cele direct legate de mediul de executie al scriptului curent
• s_FILES - contine informatii despre fisierele incarcate pe server via HTTP
• s_SESSION - include variabile inregistrate in sesiunea curenta
• s_ENV - contine variabile furnizate script-ului de catre mediul de executie
28.03.2016 Tehnologii WEB - curs 51
copyright@www.adrian.runceanu.ro
Constante(I)
Constanta este un identificator pentru o valoare scalara.
Pentru definirea si utilizarea constantelor trebuie respectate urmatoarele reguli:– numele constantelor nu sunt precedate de
simbolul dolar– numele lor vor fi alcatuite la fel ca si ale
variabilelorDe asemenea, ele sunt case sensitive, motiv pentru
care, prin conventie, se scriu intotdeauna cu majuscule;
28.03.2016 Tehnologii WEB - curs 52
copyright@www.adrian.runceanu.ro
Constante(II)
– odata definita, valoarea unei constante nu mai poate fi schimbata pe parcursul executiei unui script, cu exceptia unor constante predefinite (built-in), dintre care se poate aminti:constantele magice _file (indica numele fisierului
curent) si _LINE (indica numarul liniei pe care se afla)
precum si PHP_VERSION (precizeaza versiunea interpretorului PHP)
PHP_OS (are ca valoare numele sistemului de operare al calculatorului pe care functioneaza interpretorul PHP);
28.03.2016 Tehnologii WEB - curs 53
copyright@www.adrian.runceanu.ro
Constante(III)
Functiile define() si defined() sunt utilizate pentru definirea (inregistrarea) constantelor si, respectiv, pentru verificarea existentei acestora.
Un exemplu in care sunt folosite ambele functii:
<?phpdefine("CAPITALA", "Bucuresti"); if(defined("CAPITALA"))
echo CAPITALA;?>
28.03.2016 Tehnologii WEB - curs 54
copyright@www.adrian.runceanu.ro
Constante(IV)
Primul argument al functiei define() este un sir de caractere, reprezentand numele constantei, iar al doilea o expresie PHP valida (exceptand tablourile si obiectele), numita valoarea constantei.
Daca al treilea argument (acesta fiind optional si avand tipul boolean] al functiei define() este precizat si are valoarea true (define ("CAPITALA", "Bucuresti",true)), constanta inregistrata va fi case insensitive (adica, se poate utiliza si “capitala”).
Pentru a obtine toate constantele PHP predefinite, se poate utiliza functia get_defined_constants().
28.03.2016 Tehnologii WEB - curs 55
copyright@www.adrian.runceanu.ro
Operatori(I)
In PHP sunt folosite trei tipuri de operatori: unari (se aplica unui singur operand)binari (utilizeaza doi operanzi) ternari (se folosesc impreuna cu trei operanzi)
PHP poate realiza operatii binare numai in situatia in care cei doi operanzi au acelasi tip.
28.03.2016 Tehnologii WEB - curs 56
copyright@www.adrian.runceanu.ro
Operatori(II)
Daca acestia au tipuri diferite, se realizeaza - in prealabil -conversia unui operand la tipul celuilalt, utilizand regulile urmatoare:– daca tipurile celor doi operanzi sunt intreg si dublu,
operandul intreg este convertit la tipul dublu– daca operanzii sunt de tip intreg si sir de caractere,
operandul sir caractere de este convertit la tipul intreg– daca operanzii sunt de tip dublu si sir de caractere,
operandul sir de caractere este convertit la tipul dubluDe asemenea, operanzii de tip logic, null si resursa sunt
convertiti la tipul intreg, astfel: true la 1 si false la 0, null la 0 si resursa la id-ul resursei.28.03.2016 Tehnologii WEB - curs 57
copyright@www.adrian.runceanu.ro
1. Operatori unari
Operatorii unari utilizati in PHP sunt: operatorul de negatie logica (!) operatorul de negatie pe biti (~) operatorii de incrementare/decrementare:
postincrementare ($var++) preincrementare (++$var)postdecrementare ($var--) predecrementare (--$var)
28.03.2016 Tehnologii WEB - curs 58
copyright@www.adrian.runceanu.ro
operatorii pentru conversia de tip (cast): – (int), (integer) - schimba tipul la intreg – (float), (real), (double) - schimba tipul la duble– (string) - schimba tipul la sir de caractere – (bool), (boole) - schimba tipul la boolean– (array) - schimba tipul la tablou– (object) - schimba tipul la obiect
Trebuie remarcat ca acesti operatori schimba tipul valorii, si nu al variabilei careia i se aplica;
operatorul pentru împiedicarea afişării erorilor (@).
28.03.2016 Tehnologii WEB - curs 59
copyright@www.adrian.runceanu.ro
2. Operatori binariOperatorii binari utilizaţi în PHP sunt: operatori aritmetici:
– adunare (+) – scadere (-) – inmultire (*) – impartire (/) – modulo (%)
operatorul de concatenare (.);
operatori de atribuire: – operatorul = (egal)– si operatorii de atribuire compusi (dintr-un operator
si semnul egal): +=, -=, *=, /=, %=, ^=, .=, &=, |=;28.03.2016 Tehnologii WEB - curs 60
copyright@www.adrian.runceanu.ro
operatori de comparatie: – egal (==)– inegal (!=)– mai mare (>)– mai mic (<)– mai mare sau egal (>=)– mai mic sau egal (<=) – identic (===) – neidentic (!==)
Pentru ultimii doi operatori, conversia de tip nu este efectuata, comparându-se atât tipurile, cât şi valorile acestora;
operatori logici: AND logic (&&, and), OR logic (||, or) si XOR logic (xor);
operatori pe biti: AND pe biti (&), OR pe biti ( | ) si XOR pe biti (^);
28.03.2016 Tehnologii WEB - curs 61
copyright@www.adrian.runceanu.ro
Observatie: Cu exceptia operatorului de concatenare (in cazul
caruia operanzii folositi au tipul sir de caractere sau sunt convertiti la acesta), toti operatorii binari folosesc operanzi de tip numeric (intreg sau dublu).
Daca unul sau amandoi operanzii au tipul sir de caractere, logic, null sau resursa, vor fi convertiti in echivalentii lor numerici, inainte de efectuarea operatiei.
28.03.2016 Tehnologii WEB - curs 62
copyright@www.adrian.runceanu.ro
3. Operatori ternari
Singurul operator ternar suportat de PHP este ? :, pentru utilizarea caruia se foloseste sintaxa urmatoare:
$variabila = expresie ? expresie1 : expresie2
Operatorul ? : evalueaza expresia expresie. Daca rezultatul este true, variabila $variabila va
primi valoarea obtinuta prin evaluarea expresie1. In caz contrar, $variabila va primi valoarea rezultata
prin evaluarea expresie2.
28.03.2016 Tehnologii WEB - curs 63
Exemplu de script in care se foloseste operatorul amintit:
<?php$media=9.50;$situatiescolara=($media>=8.50) ? "este premiant." : "nu este premiant.";
echo "Elevul ".$situatiescolara;?>
28.03.2016 Tehnologii WEB - curs 64
copyright@www.adrian.runceanu.ro
Bibliografie: Adrian Runceanu, Mihaela Runceanu, Tehnologii siaplicatii web – îndrumar de laborator, Editura AcademicaBrâncuşi, Târgu-Jiu, 2009, ISBN 978-973-144-302-7
Întrebări?
28.03.2016 Tehnologii WEB - curs 65
Recommended