Array-uri (Vectori)
Stefanescu Mihai 2 years ago PHPUn array (vector) reprezinta o succesiune de elemente sub forma de perechi cheie -> valoare, unde fiecare cheie identifica in mod unic un element.Spre deosebire de alte limbaje unde cheia trebuia sa fie numerica, in PHP cheia poate fi atat numerica cat si string, iar valorile din array pot avea orice tip de date.In PHP exista 3 tipuri de array-uri:
- Array-uri numerice – Un array cu chei numerice. Valorile sunt stocate si accesate intr-un mod linearArray-uri Asociative – Un array cu chei string-uri. Valorile sunt accesate dupa cheie si nu intr-un mod linear ca mai sus.Array-uri multidimensionale – Un array care are pe post de valoare unul sau mai multe array-uri.
Array-uri Numerice
Acest tip de array-uri pot stoca numere, stringuti sau obiecte, dar cheile lor trebuie sa fie numeric. In mod normal indexul incepe de la 0.
/* O metoda de e creea un array. */ $numere = array( 1, 2, 3, 4, 5); foreach( $numere as $valoare ){ echo "Valoarea este $valoare <br />"; } /* A doua metoda. */ $numere[0] = "unu"; $numere[1] = "doi"; $numere[2] = "trei"; $numere[3] = "patru"; $numere[4] = "cinci"; foreach( $numere as $valoare ){ echo "Valoarea este $valoare <br />"; }
Array-uri Asociative
Array-urile asociative sunt similare cu array-urile numerice, singura diferenta fiind indexul (cheia).
$cumparaturi = array( "Paine" => 3, "Lapte" => 1, "Oua" => 12 ); echo "Lista mea de cumparaturi:"; foreach( $cumparaturi as $cheie -> $valoare ){ echo "$cheie - ".$valoare[$cheie]." <br />"; } //Codul de mai sus este similar cu acesta: echo "Lista mea de cumparaturi:"; echo $cumparaturi['Paine']."<br/>"; echo $cumparaturi['Lapte']."<br/>"; echo $cumparaturi['Oua']."<br/>";
Array-uri multidimensionale
Un array multidimensional este un array care are una sau mai multe valori array (Puteti sa va duceti cu gandul la matrici(matematica cls XI-XII) ).
$filme_preferate = array( "Actiune" => array( "Bad Company" ), "Comedie" => array( "Almost Heroes" ), "Drama" => array( "12 Angry Men", "25th Hour", "88 Minutes" ) );