Învăţăm PHP: Variabile şi constante


Dacă aţi parcurs articolul anterior, atunci ştiţi deja că întotdeauna vom începe codul cu <?php şi îl vom încheia cu ?>. Am spus că partea de HTML nu ne mai interesează şi, de acum, nici <?php şi ?> nu le vom mai indica în secvenţele de cod: dacă vreţi să testaţi secvenţele PHP din materialele acestea va trebui să faceţi singuri încadrarea corespunzătoare, conform lecţiei de ieri. Astăzi mergem mai departe, vorbind despre variabile şi constante. Ce sunt acestea? Sunt un fel de „containere” în care puteţi depozita nişte valori. Şi când spun valori nu mă refer la certificate, bijuterii sau bani, ci valori precum 1234 sau „portocale”.

Teoria ar fi lungă (pentru detalii nu uitaţi CHM-ul cu documentaţia offline, prinde bine), dar o vom reduce astfel. O variabilă trebuie să înceapă cu caracterul $. Trebuie să urmeze fie o literă, fie caracterul _. După aceasta putem pune alte litere, cifre sau underscore. Să vedem câteva exemple: $i, $elev, $_num, $a1, $crocodil_cu_pene_acre… Să vedem şi contra-exemple: $1an, ceva, $999… Când spun litere mă refer la cele latine, fără diacritice. Deci contra-exemplu este şi $ţap. Mai reţineţi că un nume de variabilă e rezervat de PHP: $this, precum şi că are importanţă dacă aţi scris cu litere mari sau mici ($Indice şi $indice sunt două variabile diferite!).

Pentru moment vom pune în variabile doar două tipuri de „conţinut”: numere şi texte. Pentru numere se face o simplă atribuire. Pentru texte (stringuri) trebuie folosite ghilimelele. Astfel putem scrie ceva de genul:

[PHP]$varsta = 75;
$nume = „Ionel”;
echo $nume.” are „.$varsta.” de ani”;[/PHP]

Ce face acest cod? Afişează „Ionel are 75 de ani” (fără ghilimele). Observaţi aici deja un operator important: punctul concatenează (pe româneşte pune unul lângă altul) mai multe texte. După cum intuiţi, numărul 75 va fi automat convertit în text. Numărul nu trebuie să fie întreg (puteţi scrie de exemplu $inaltime = 75.34;) sau pozitiv (exemplu $temperatura = -10;). În fine, pe lângă numere şi texte se mai pot atribui unei variabile valorile boolene (logice – adevărat sau fals), dar şi şiruri de valori (array-uri… vorbim altă dată).

Ce sunt constantele? Tot nişte containere pentru valori, dar aceste valori nu se pot schimba. Dacă unei variabile într-o linie putem să îi dăm o valoare, şi în următoarea linie altă valoare, constantele primesc o valoare şi… gata. În timpul execuţiei codului nu i se poate schimba valoarea. Cum specificăm valoarea? Vă recomand primul exemplu de mai jos, al doilea fiind valabil doar din PHP 5.3.0. Observaţi că nu se foloseşte $ înainte de numele variabilei.

[PHP]
define(„SALUT”,”Buna ziua, domnule director!”);
echo SALUT;
const PAROLA = „1a2b3c4d5e6f”; //merge doar cu PHP 5.3.0
echo „
„.PAROLA;[/PHP]

Nu sunt de foarte mare folos începătorilor, dar de dragul rotunjirii informaţiilor de mai sus să spunem că dacă avem o variabilă la care nu îi ştim tipul îl putem afla cu funcţia gettype sau, mai bine, cu funcţii din familia is_…. De exemplu is_string, pentru texte (stringuri), sau is_numeric, pentru numere. În fine, dacă vreţi ca o anumită variabilă să nu mai aibă nici o valoare, îi puteţi „distruge” conţinutul cu unset. Puteţi să testaţi următorul cod:

[PHP]$x=5;
echo $x.”
„;
echo gettype($x).”
„;
unset($x);
echo $x.”
„;
$x=10;
echo $x.”
„;[/PHP]

Va returna:

[PHP]5
integer

10[/PHP]

O linie este goală pentru că acolo se cere afişarea conţinutului variabilei, dar ea a fost „distrusă” (golită).

Cu aceasta am cam terminat cu variabilele şi cu constantele. Sunt şi alte aspecte (precum „spaţiul de existenţă” al unei variabile, sau referirea lor cu &) dar ar complica lucrurile nu foarte util în acest moment. Şi închei cu un scurt screencast. De ce? Poate unii, chiar şi acum cât lucrurile sunt foarte uşoare, ar fi tentaţi să creadă că e complicat, că pare doar uşor. Nu pare: chiar e uşor (pentru moment). Şi sper ca scurta înregistrare de mai jos să vă convingă. Nu uitaţi să comutaţi pe fullscreen ca să se vadă mai bine.


Apreciază articolul:

1 stea2 stea3 stea4 stea5 stea (Neevaluat încă)
Loading...Loading...

4 comentarii

  1. Laur spune:

    Buna dimineata,
    Am observat ca folositi ghilimele duble. Nu este recomandat sa se foloseasca simple doar reduce durata de incarcare a codului? Nu vreau sa o fac pe marele stiutor, si sincer nu ma pricep la PHP, doar la modificat mici chestii. Asa mi-a spus un prieten care lucreaza la o firma de webdesign din SUA, nu stiu cat este de corect sau nu.

  2. Xpt1 spune:

    Cu ce program ai scris codul?
    Doresc a-i sti numele pentru a-l putea folosi, problema cea mare a mea fiind TAG-urile (HTML, PHP, etc…).

  3. ValsiS spune:

    Probabil era mai mai bine daca explicai de ce se pun parantezele, cand se pun… Un exemplu bun de variabila cred ca era:

    $data_de_azi= date(„m/d/Y”);

    echo „Azi suntem in”.$data_de_azi ;

    Desi pentru tine poate parea banal, pentru noi orice amanunt conteaza.

  4. radu.capan spune:

    @Laur: am să scriu separat, dacă tot a fost menţionat acest aspect.
    @Xpt1: eu folosesc zilnic Notepad++ (are autocompletare la HTML şi PHP), dar sincer de o vreme mă cam supără; tot Notepad++ folosesc totuşi; în screencast am folosit WeBuild, un program comercial, dar l-am ales că pot arăta uşor codul şi execuţia lui.
    @ValsiS: am reţinut sugestia; nimic nu mi se pare prea banal, dar mi-e greu să sortez ce să spun într-un material şi ce nu, ca să nu fie prea lung sau să bag în ceaţă; încerc să construiesc cu gândul la cei foarte-foarte la început şi voi ţine cont de sugestii.
    Mulţumesc tuturor.


Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile necesare sunt marcate *