Pagina de start a forumului Comunitatea JustUs  
FAQ Cautare
Membri Grupuri
Profil Mesaje private
Inregistrare Autentificare
Tipuri si siruri de variabile
Creaza un subiect nou   Raspunde la subiect    Pagina de start a forumului Comunitatea JustUs Tutoriale PHP | MySql
Subiectul anterior :: Subiectul urmator  
Autor Mesaj
Elektro_Love
Administrator
Administrator
Elektro_Love

Data inscrierii: 21/Iul/2010
Mesaje: 101

MesajTrimis: 21/07/2010 19:08    Titlul subiectului: Tipuri si siruri de variabile Raspunde cu citat (quote)

Numere si siruri, tipul variabilelor

Programele de calculator manipuleaza datele, care reprezinta informatii. Programele PHP folosesc doua categorii principale de date: numere si siruri. Numerele sunt compuse mai ales din cifre, în timp ce un sir poate contine absolut orice caracter, inclusiv cifre, litere si simboluri speciale.
Decizia privind modul de stocare a datelor este importanta, în mod caracteristic, datele se stocheaza sub forma de numere atunci când se doreste executarea unor operatii matematice asupra datelor, fiindcă numerele sunt stocate într-un mod care îngăduie efectuarea de calcule. Pe de alta parte, sirurile sunt stocate utilizând o modalitate care faciliteaza întelegerea lor de catre operatorul uman. Datele trebuie stocate sub forma de siruri daca formatul acestora nu este numeric sau daca doriti ca operatorul uman sa fie capabil de a introduce sau de a vizualiza datele. Practic, puteti asimila numerele cu un mod de stocare a datelor în interiorul calculatorului. Sirurile se pot asimila unui mod de stocare a datelor în afara calculatorului.

Aceste doua mari categorii de date: numere si siruri, formeaza opt soiuri principale de variabile :
- Boolean
- Integer
- Float
- String
- Array
- Object
- Resource
- Null

In mod normal tipul variabilelor nu este specificat explicit; acesta va fi evaluat de catre interpretorul PHP la timpul run-time (in momentul executarii scriptului).

1. Tipul boolean

Variabilelele de tipul boolean pot lua doar doua valori : FALSE sau TRUE

Variabilele de alt tip decat boolean pot fi convertite la tipul boolean prin operatorul cast (bool) sau (boolean), plasate inaintea valorilor, desi in general nu e trebuință de aceasta converrire, valoarea fiind automat recunoscuta de PHP.

2. Tipul integer

PHP foloseste doua categorii de numere: întregi (tipul integer) si duble, cu virgula (tipul float)
Variabilele integer reprezinta numerele intregi, ele pot fi specificate in format zecimal, hexazecimal sau octal.
Numerele întregi reprezinta numerele fara parte fractionara folosite la numarare, plus zero si numerele negative. Cu alte cuvinte, în PHP termenul de întreg are aceeasi semnificatie ca si în matematica. De exemplu, numarul 100 poate fi reprezentat în PHP sub forma de întreg.
Scrierea numerelor PHP este simpla. Un întreg PHP se obtine prin scrierea cifrelor care îi alcatuiesc valoarea. Daca valoarea este negativa, scrieti un semn fără iute la stânga numarului. Evitati sa scrieti spatii sau virgule ca parte a unui întreg PHP.
Iata câteva exemple de numere PHP întregi :
215678 - Numar in reprezentare zecimala
0x1A8; - Numar in reprezentare hexazecimala (reprezinta: 1*16*16 + 10*16 + 8 = 424 (in zecimal))
067 - Reprezinta: 6*8 + 7 = 55 (in zecimal)

Valorile minime, respectiv maxime pe care le poate lua o variabila de tip integer depind de sistemul de operare pe care ruleaza modulul PHP. De exemplu pentru un sistem Windows valoarea unui integer se memoreaza pe 32 de biti: 31 bit pentru numar si un bit pentru semn. In acest caz valorile unui intreg se afla in intervalul :-213 repectiv: 213. Daca incercam sa folosim un integer cu valori care ies din acest inteval vor avea de-a face cu un fenomen de depasire : integer overflow. In acest caz interpretorul PHP converteste acesta valoare intr-o valoare de tip float (care are un interval mai extins de valori).

In PHP simpla impartire a doua valori intregi va produce ca rezultat o variabila de tip float. Pentru a obtine doar partea intreaga acestui rezultat putem utiliza operatorul cast (int) in fata rezultatului.
Ex.: echo (int)8.7; (va returna 8)
Pentru a rotunji rezultatul la intregul cel mai apropiat de valoarea reala se poate folosi functia round(), unde intre paranteze se adauga valoarea.
Ex.: echo round(8.7); (va returna 9)

3. Tipul float

Reprezinta variabile de tip real [numerele cu virgula], (în lb. engleza se foloseste punctul zecimal în loc de virgula). De exemplu 2.5
In general, numerele duble (tipul float) sunt stocate folosindu-se formatul standard IEEE-64, care furnizeaza 64 de biti. Acest format va permite sa stocati valori care pot merge pâna la 1,8 x 10 la puterea 308 sub forma de numere duble si furnizeaza aproape 14 cifre dupa punctul zecimal (sau cifre semnificative) de precizie.
Iata câteva exemple de numere duble (tipul float)
123.4567 - Numar de tip float
1.2e3; - Reprezinta: 1.2 * 103

4. Tipul string

Reprezinta o insiruire de caractere, fiecare caracter este memorat pe 1 byte; setul de caractere este limitat la 256 valori distincte. Mărimea sirurilor poate fi oricat de mare in PHP, nu exista specificatii care sa limiteze numarul maxim de caractere dintr-un sir.
Spre deosebire de întregi si de numere float, care contin cifre, sirurile pot contine orice caracter. Ca atare, sirurile sunt utile pentru stocarea datelor care nu pot fi calculate, cum ar fi nume, fraze si adrese.

In PHP, un sir poate fi declarat in mai multe feluri:

1) Un mod necomplicat de a declara un sir este prin delimitarea cu ghilimele simple (' ')

Daca dorim ca sirul sa contina caracterul ' va necesită sa inseram inaintea lui caracterul escape \. Daca dorim ca sirul sa contina caracterul \ va trebui sa dublam acest caracter. Acest comportament este exemplificat in exemplul urmator:

Citat:
<?php
$var1 = 'Acesta este un sir de test';
echo 'Curs \'PHP\'';
echo '<br />Vrei sa stergi C:\\*.* ?';
echo '<br />Variabila var1=$var1';
echo "<br />Variabila var1=$var1";
?>


Observati diferenta dintre ultimile doua linii!
In penultima linie, unde s-a întrebuințat gilimele simple pentru delimitarea sirului, variabila $var1 nu este expandata adica nu este afisat valoarea variabilei var1=Acesta este un sir de test ci exact textul scris (numele ei). Pentru a realiza afisarea valorii variabilei si nu numele acesteia, se folosesc ghilimelele duble, precum in ultima linie a exemplului de mai sus.


2) O alta metoda pentru a specifica un sir în PHP este prin folosirea ghiimelelor duble (" ").

Daca intr-un sir delimitat prin ghilimele duble vrem ca acesta sa afiseze numele unei variabile, nu valoarea acesteia, adaugam un caracter backslash (\) inaintea numelui variabiei.
Exemplu; echo "Numele variabilei este \$var";
Acest cod va afisa Numele variabilei este $var, oricare ar fi valoarea variabilei "$var".

Caracterele care alcatuiesc sirul sunt incluse între ghilimele duble (" ");
De exemplu, sirul reprezentând numele fizicianului care a formulat teoria relativitatii este "Albert Einstein". Asa cum s-a explicat, un sir poate contine date numerice; de exemplu, "3.14159".
Daca se doreste adaugarea de ghilimele duble intr-un sir delimitat de ghilimele duble, se adauga caracterul \ in fata acestora.
Exemplu; echo "Numele programului este \"PHP\".";
Prin delimitarea cu ghilimele duble PHP faciliteaza includerea în siruri a unor caractere speciale, ca de pildă caracterele de salt la linie noua sau retur de car, prin furnizarea de secvente escape care reprezinta caractere speciale.
Iata secventele escape utilizate în PHP:
\n - salt la linie noua
\r - retur de car (rand nou)
\t - caracter de tabulare pe orizontala
\\ - backslash
\$ - simbolul dolarului
\” - ghilimele duble

Ca exemplu, iata un sir care conține un retur de car, urmat de un salt la linie noua: "Salut, lume!\r\n".

Retineti ca fiecare secventa escape inițiază cu un backslash (\). Pentru a include un backslash într-un sir, trebuie sa folositi doua caractere backslash.

Pe langa imbricarea variabilelor in cadrul sirurilor delimitate prin ghilimele duble, PHP pune la dispozitie operatorul de concatenare a sirurilor: . (punct) . Acest operator adauga un sir la sfarsitul altui sir. De exemplu:

Citat:
<?php
$nume = 'Popescu';
$prenume='Costel';
echo 'Numele de familie este '.$nume. 'iar prenumele este '.$prenume;
?>


In anumite situatii este necesar sa accesam unul dintre caracterele unui sir. Pentru aceasta putem folosi parantezele{} ca in exemplul de mai jos:

Citat:
<?php
$var1 = 'Acesta este un sir de test';
echo $var1{0}; // Afisaza A (primul caracter din sir)
echo $var1{2}; // Afisaza e (al treilea caracter din sir)
?>


3) Sintaxa heredoc este o alta modalitate de a delimita siruri

In acest caz delimitatorul este ("<<<"); acesta trebuie urmat de un identificator unic, dupa care urmeaza sirul de caractere, iar secventa se incheie din nou cu identificatorul mentionat. Identificatorul de incheiere trebuie sa se afle in prima coloana a liniei, acesta poate contine caractere alfanumerice dar neaparat trebuie sa inceapa cu o litera, nu cu o cifra sau alt semn.
Veti intelege mai bine studiind exemplu de mai jos:

Citat:
<?php
$var1 = <<< EOT
Exemplu de sir care foloseste delimitatorul heredoc.
EOT;
echo $var1;
?>


5. Tipul array

Reprezinta un vector de valori (care creaza o matrice, vezi Lectia 9 despre matrice), fiecare element al matricei are asociat o cheie. Aceasta cheie va fi folosita ulterior la identificarea unui element specific at matricei. In PHP tipul array se mai numeste si tip map ordonat, deoarece elemente vectorului sunt ordonate dupa campul cheie.
Variabilele de tip array si lucrul cu acestea vor fi prezentate mai detaliat in lectiile urmatoare. Iata un exemplu simplu de variabile array:

Citat:
<?php
$fructe[0] = 'mere';
$fructe[1] = 'caise';
$fructe[2] = 'piersici';
?>


6. Tipul object

Reprezinta de fapt instanta unei clase declarate in PHP. O clasa este o structura care contine variabile penis si functii membru.
Variabilele de tip object si lucrul cu acestea vor fi prezentate detaliat in lectiile urmatoare.

7. Tipul resource

Este un tip special de variabila care pastreaza o legatura spre resurse externe. Exemple de resurse externe: manipulatori pentru deschidere de fisiere, conectare la baze de date, compresia fisierelor, resurse COM, etc...

8. Tipul NULL

Reprezinta varibilele care nu au inca atribuita o valoare.
O variabila se considera a avea valoarea Null daca:
- este setata explicit prin atribuirea valorii NULL
- nu a fost asignata inca o valoare acestei variabile
- variabila a fost stearsa prin functia unset();

Putem afla tipul unei variabile întrebuințând functia gettype() care returneaza un string (sir) continand tipul variabilei cercetate.
Observati si studiati exemplul de mai jos

Citat:
<?php
$var1 = TRUE;
$var2 = 100;
$var3 = 23.88;
$var4 = "Nume";
$var[5] = "fructe";
echo gettype($var1);
echo '<br />'.gettype($var2);
echo '<br />'.gettype($var3);
echo '<br />'.gettype($var4);
echo '<br />'.gettype($var[5]);
echo '<br />'.gettype($var6);
?>


Observati ca utima linie afisata este NULL, asta deoarece $var6 nu are nici o valoare determinata
Vezi profilul utilizatorului Trimite mesaj privat
Afiseaza mesajele pentru a le previzualiza:   
Creaza un subiect nou   Raspunde la subiect    Pagina de start a forumului Comunitatea JustUs Tutoriale PHP | MySql Ora este GMT + 3 ore
Pagina 1 din 1

 
Mergi direct la:  
Nu puteti crea un subiect nou in acest forum
Nu puteti raspunde in subiectele acestui forum
Nu puteti modifica mesajele proprii din acest forum
Nu puteti sterge mesajele proprii din acest forum
Nu puteti vota in chestionarele din acest forum
ezHyperShadow template - a boo design Original ezHyperShadow theme by boo ©2004 www.ez-life.net
Powered by phpBB © 2001, 2002 phpBB Group
Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro