Lucrul cu matrice în mod corect php

În această lecție ne vom uita la exemple practice de lucru cu un număr de funcții PHP-shnyh pentru lucrul cu matrice. Acest material este util în fiecare dezvoltator PHP: permite să scrie cod compact și ușor de citit.

Să începem cu o funcție simplă care operează cheile și valorile elementelor de matrice. O astfel de caracteristică este array_combine (). care creează o nouă serie de existente două: primele utilizări pentru a crea cheia, a doua ca valori:

În aceeași secțiune puteți găsi utile array_values ​​funcția (). Se extrage de la o matrice valori asociative; array_keys () returnează cheile numai predeterminate ale șirului; array_flip () swap-uri cheile și valorile:

cod de reducere

Lista () funcția. care este în esență un limbaj de design, vă permite să atribuiți rapid valorile unei matrice a unui număr de variabile. Un exemplu simplu de lucru cu lista de funcții ():

Această tehnică se potrivește strălucit în colaborare cu funcții preg_slit () sau exploda (). Se extrage doar acele valori care sunt într-adevăr necesare:

De asemenea, lista () poate fi plasată într-un foreach:

Pentru a extrage valorile pe care le puteți utiliza extractul () dintr-un tablou asociativ. Ca rezultat, veți obține un număr de variabile (cu nume care se potrivesc cu matrice chei):

Atunci când se lucrează cu funcția de extract () ar trebui să fie precaut, mai ales în timpul interacțiunii cu datele de utilizator (rezultate de interogare), de aceea este recomandat să utilizați EXTR_IF_EXISTS și steaguri EXTR_PREFIX_ALL.

puteți utiliza compact () pentru a face opusul. care va forma o serie de un număr de variabile:

funcţia de filtrare

Pentru a filtra datele din funcția de cel mai bun mod adecvat array_filter (). Deoarece parametrii trebuie să treacă o matrice, și o funcție de tratare anonim. Pentru a menține elementul din matrice ar trebui să se întoarcă adevărat. în caz contrar fals:

Filtrarea poate fi efectuată și cheile. Pentru a face acest lucru, utilizați a treia opțiune, un steag sau ARRAY_FILTER_USE_KEY ARRAY_FILTER_USE_BOTH.

În plus față de acest lucru, puteți provoca array_filter () fără argumente. Ca rezultat al matrice va elimina toate valorile goale:

În scopul de a obține o serie de valori unice ar trebui să cauzeze doar funcția array_unique (). Este demn de remarcat faptul că, în matrice rezultată va include numai primul element:

array_column () funcția va fi utilă dacă trebuie să eliminați o anumită coloană a unei matrice multidimensionale. Acest lucru poate fi rezultatul unei interogări SQL sau de date dintr-un fișier CSV. Ar trebui să specificați numele de matrice, și coloana:

În PHP funcția 7 array_column () a primit puțin apgreyd: posibilitatea de a interacționa cu câmpurile obiectului. Acest lucru simplifică foarte mult lucrul cu matrici de modele:

Traversarea matrice

array_map () vă permite să ocolească toate elementele unei matrice și specificați o funcție de apel invers. Puteți trece ca scrisoarea anonimă, sau numele unei funcții existente. Rezultatul va fi o matrice cu valorile convertite:

Există o concepție greșită puternică că funcția de apel invers nu se poate transmite simultan și chei, și valori. Nu este atât de:

Acest lucru nu este cea mai bună punere în aplicare. Să folosim array_walk funcția (). Este similar cu array_map (). dar funcționează un pic diferit. În primul rând, datele inițiale sunt transmise pe link-ul, prin care array_walk () va procesa matrice a trecut, mai degrabă decât să creați unul nou. Astfel, vom fi în măsură să transmită valorile și cheile în matrice original prin referință:

combinarea matrice

Call array_merge) Funcția (- cel mai simplu mod de a combina mai multe matrice. Toate datele vor fi îmbinate, datele duplicat este suprascrisă:

Pentru a elimina valori dintr-o matrice la alta matrice, utilizați array_diff funcția (). Operațiunea inversă este implementat folosind array_intersect) apel (. exemple:

operații matematice

Cu array_sum () poate calcula suma elementelor din matrice; array_product () se vor înmulți toate valorile; array_reduce () permite să se folosească de propria formulă:

array_count_values ​​() funcția va calcula numărul de valori unice ale șirului:

grupuri electrogene

Pentru a crea o serie de un număr predeterminat de elemente, și să le cereți o singură valoare ar trebui să utilizeze array_fill ():

Pentru a obține o matrice, elementele care ar trebui să fie în intervalul de ore sau litere invocate funcția interval ():

Pentru a decupa o matrice - pentru a obține primele trei elemente - suficient pentru a provoca funcția array_slice ():

sortarea matrice

Vă rugăm să fiți conștienți de faptul că funcțiile de sortare toate PHP-shnye lucra cu matricea originala de referință, și returnează adevărat pe succes și fals în caz de eșec. sortare () funcție sortează elementele de matrice în ordine crescătoare, și atribuie noi chei la elementele de matrice. Soiurile de acest gen, în funcție de litera prefix:

  • a. sortarea, păstrând relația dintre cheile și valorile
  • k. sortarea de chei
  • r. sortarea în înainte / înapoi
  • u. sortare folosind o funcție personalizată

Sunt disponibile combinații de tipuri de sortare:

Lucrul cu matrice în mod corect php

Prin obținerea de informații de la două canale (vedere si auz) eficacitatea instruirii de învățare departe superioare de cărți. O temele pentru acasă și teste on-line vă va permite să se gândească în mod constant în limba țintă și imediat verifica cunoștințele!

Lucrul cu matrice în mod corect php

Lucrul cu matrice în mod corect php

Dacă doriți o lungă perioadă de timp pentru a studia modul în HTML, mi-ai, pentru ai vesti bune!

Lucrul cu matrice în mod corect php

Dacă ați învățat deja HTML și doresc să avanseze, următorul pas va fi de a studia tehnologia CSS.

Lucrul cu matrice în mod corect php

Dacă doriți să înțeleagă conceptele de domeniu si hosting, învață cum să creeze o bază de date, încărca fișiere pe un site web prin intermediul unui server FTP, crea subdomenii, configurați cutiile poștale pentru site-ul și să monitorizeze participarea, acest curs este conceput special pentru tine!