BAWZIE Posted July 22, 2016 Share Posted July 22, 2016 (edited) PHP dispune de cateva variabile implicite. Acestea sunt pre-populate de PHP in momentul executiei, deci nu trebuie definite sau initializate. Sunt disponibile in orice portiune a codului si in orice script PHP si pot fi folosite fara sa fie nevoie de alte pregatiri. Anumite variabile (ca de exemplu $_POST) au valori doar in anumite situatii (spre exemplu, doar atunci cand sunt folosite formulare). Mai jos sunt descrise pe scurt aceste variabile, cu mentiunea ca in lectiile urmatoare vor fi folosite in exemple din care veti intelege (usor) rostul lor. $_GET Vector asociativ ce contine parametrii transmisi prin URL sau printr-un formular. De exemplu, daca pagina noastra PHP se numeste test.php, un URL de genulhttp://localhost/test.php?nume=Alex&varsta=12&ocupatie=elevar popula variabila $_GET cu urmatoarele valori:Testeaza print_r( $_GET );/* afiseaza:Array([nume] => Alex[varsta] => 12[ocupatie] => elev)*/Nota: numele parametrilor au rol de cheie in vectorul $_GET.Vectorul $_GET este de asemenea populat la folosirea formularelor GET. $_POSTSimilar cu $_GET, doar ca parametrii sunt transmisi prin formulare (forms) - vezi lectia Formularepentru detalii. $_REQUESTInglobeaza atat $_GET cat si $_POST. $_SESSIONFolosita pentru a defini date ce sunt disponibile atata timp cat utilizatorul acceseaza site-ul, indiferent de paginile vizualizate. In mod normal o variabila este definita doar cand un utilizator cere o pagina. La finalul executiei scriptului, valorile variabilelor se pierd (inclusiv variabile $_GET, $_POST, etc). Daca sunt puse in vectorul $_SESSION, valorile pot persista si dupa terminarea executiei scripturilor. Vezi lectia Sesiuni pentru detalii. $_SERVERFurnizeaza informatii despre server, pagina ceruta si utilizatorul care acceseaza pagina.Testeaza print_r( $_SERVER );/* afiseaza ceva asemanator cu ce e mai jos:Array([REDIRECT_STATUS] => 200[HTTP_VIA] =>[HTTP_COOKIE] =>[HTTP_REFERER] => http://php.punctsivirgula.ro/[HTTP_USER_AGENT] => Mozilla/5.0 ...[HTTP_HOST] => php.punctsivirgula.ro[HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8[HTTP_ACCEPT_LANGUAGE] => ro-ro,ro;q=0.8,en-us;q=0.6,en-gb;q=0.4,en;q=0.2[HTTP_ACCEPT_CHARSET] => UTF-8,*[HTTP_KEEP_ALIVE] => 300[HTTP_CACHE_CONTROL] => max-age=0, max-age=0[HTTP_CONNECTION] => Keep-Alive[PATH] => /bin:...:/usr/bin:/bin[sERVER_SIGNATURE] => Apache/2.2.9 (Unix) ... at php.punctsivirgula.ro Port 80[sERVER_SOFTWARE] => Apache/2.2.9 (Unix) ...[sERVER_NAME] => php.punctsivirgula.ro[sERVER_ADDR] => 89.xx.xx.xx[sERVER_PORT] => 80[REMOTE_ADDR] => 69.xx.xx.xx[DOCUMENT_ROOT] => /.../[sERVER_ADMIN] => webmaster@...[sCRIPT_FILENAME] => /.../index.php[REMOTE_PORT] => 35423[REDIRECT_QUERY_STRING] =>[REDIRECT_URL] => /arrays/[GATEWAY_INTERFACE] => CGI/1.1[sERVER_PROTOCOL] => HTTP/1.1[REQUEST_METHOD] => GET[QUERY_STRING] =>[REQUEST_URI] => /arrays/[sCRIPT_NAME] => /index.php[php_SELF] => /index.php[REQUEST_TIME] => 1250589158[argv] => Array()[argc] => 0)*/ $_ENVAfiseaza informatii despre mediul curent in care este instalat si ruleaza interpretorul PHP, despre scriptul curent, etc $_COOKIEFolosita pentru a vedea elementele de tip Cookies de la site-ul/pagina curenta, disponibile pe calculatorul utilizatorilor - vezi lectia Cookies pentru detalii. $_FILESFolosita la incarcarea fisierelor pe server (file uploads) - vezi lectia File upload pentru mai multe detalii Desi toate aceste variabile au si nume alternative, este recomandat sa se foloseasca in forma in care au fost prezentate mai sus. 3 comentarii Citeste-le Adauga unul Constante predefinite 1 In PHP exista o serie de constante ce pot fi folosite in orice moment. Ca si in cazul vectorilor superglobali, acestea sunt populate de catre interpretorul PHP si sunt disponibile in toate fisierele sursa. PHP_EOL - contine caracterul new-line ce poate fi afisat pentru a formata rezultatul unui script pe mai multe linii.echo "Linia 1", PHP_EOL, "Linia 2";// alternativ se poate folosi \n, desi cele 2 nu sunt mereu echivalenteecho "Linia 1", "\n", "Linia 2"; TRUE, FALSE - constantele de tip boolean ce pot fi folosite la testele din instructiunea if NULL - referinta nula, utila in "stergerea" unei variabile PHP_OS - contine identificatorul sistemului de operare pe care ruleaza interpretorul PHP PHP_VERSION - contine versiunea completa a interpretorului DEFAULT_INCLUDE_PATH - contine locatiile unde sunt cautate scripturile atunci cand sunt incluse cu include sau require; de obicei, aceasta constanta contine directorul curent si alte cateva locatii E_ERROR, E_WARNING si altele - contin codurile diverselor tipuri de erori ce pot sa apara Exista si alte constante in distributia de baza a PHP, plus multe altele, definite cu fiecare extensie incarcata, dar nu sunt atat de uzuale ca acestea. Un comentariu Citeste-l Adauga unul Constante magice 0 Limbajul PHP dispune de o serie de expresii numite "constante magice" care au valori diferite in functie de anumiti parametri (cum ar fi momentul si codul-sursa in care sunt folosite). Denumirea de 'constanta' este improprie, pentru ca, asa cum stiti deja, o constanta nu-si poate schimba valoarea. Nici 'variabile' nu pot fi numite deoarece nu au nevoie de declarare sau initializare, asa ca s-a recurs la un compromis: denumirea 'constante magice' (magic constants). Cele mai uzuale sunt __LINE__, __FILE__, __FUNCTION__ si __CLASS__. Mai noile __DIR__, __METHOD__, __NAMESPACE__ sau__TRAIT__ sunt mai rar folosite datorita faptului ca au nevoie de o versiune mai noua a interpretorului PHP (cel putin versiunea 5.0 sau chiar 5.4) Mai jos sunt explicate aceste constante. LINE Returneaza linia curenta a scriptului PHP.Testeaza <?php# afiseaza numarul liniei pe care este scrisa instructiunea echoecho __LINE__; // 187?> FILE Contine calea completa catre scriptul PHP care se executa. Daca este folosita intr-un fisier inclus atunci numele acestui fisier este returnat.Testeaza <?php# afiseaza numele fisierului executatecho __FILE__; // numescript.php?> FUNCTION Returneaza numele functie din interiorul careia se foloseste constanta.Testeaza <?php# declar o functie care contine o constanta magicafunction spuneNumele() {echo __FUNCTION__;}# apelez functia care va afisa valoarea constanteispuneNumele(); // va afisa: spuneNumele?> CLASS Returneaza numele clasei curente. DIR Contine numele directorului in case este salvat scriptul curent. Aceasta constanta este echivalenta cudirname(__FILE__). METHOD Contine numele metodei de clasa din care se foloseste constanta. Se poate folosi numai cu clase. NAMESPACE Contine numele spatiului de lucru curent (name-space). TRAIT Contine numele trasaturii curente (trait). Sursa. Edited July 22, 2016 by bowS ToV Link to comment Share on other sites More sharing options...
zL Dark ReturN Posted July 22, 2016 Share Posted July 22, 2016 Nu mai posta daca dai doar copy - paste. Tu: " Desi toate aceste variabile au si nume alternative, este recomandat sa se foloseasca in forma in care au fost prezentate mai sus. 3 comentarii Citeste-le Adauga unul Constante predefinite 1 " Te rog frumos sa te uiti peste ce postezi, sa oferi culoare, si unde nu este "code" si "/code", adauga. Acestea nu sunt tutoriale. Sunt copy-paste-uri aiurea. Sper ca m-am facut inteles. 2 Link to comment Share on other sites More sharing options...
Recommended Posts