PHP polje: asocijativno, višedimenzionalno
⚡ Pametni sažetak
PHP nizovi pohranjuju mnoge povezane vrijednosti unutar jedne varijable, što olakšava grupiranje i obradu povezanih podataka. Ovaj vodič pokriva numeričke, asocijativne i višedimenzionalne nizove, operatore usporedbe nizova i osnovne funkcije kao što su count, sort, ksort i asort.

Što je PHP polje?
PHP polje je varijabla koja pohranjuje više od jednog dijela povezanih podataka u jednoj varijabli.
Zamislite niz kao bombonijeru s utorima unutra.
Kutija predstavlja sam niz, dok prostori koji sadrže čokolade predstavljaju vrijednosti pohranjene u nizu.
Primjeri u nastavku ilustriraju kako to funkcionira.
Numerički nizovi
Numerički nizovi koriste brojeve kao pristupne ključeve.
Pristupni ključ je referenca na memorijski utor u varijabli polja.
Pristupni ključ se koristi kad god želimo pročitati ili dodijeliti novu vrijednost elementu niza.
Ispod je sintaksa za kreiranje numeričkog niza u PHP-u.
Primjer polja
<?php $variable_name[n] = value; ?>
Or
<?php
$variable_name = array(n => value, ...);
?>
OVDJE,
- “$variable_name…” je naziv varijable
- “[n]” je pristupni indeksni broj elementa
- “vrijednost” je vrijednost dodijeljena elementu niza.
Pogledajmo sada primjer numeričkog niza.
Pretpostavimo da imamo 5 filmova koje želimo pohraniti u niz varijabli.
Za to možemo upotrijebiti primjer prikazan u nastavku.
<?php $movie[0] = 'Shaolin Monk'; $movie[1] = 'Drunken Master'; $movie[2] = 'American Ninja'; $movie[3] = 'Once upon a time in China'; $movie[4] = 'Replacement Killers'; ?>
Ovdje,
Svakom filmu dodijeljen je indeksni broj koji se koristi za dohvaćanje ili izmjenu njegove vrijednosti. Promatrajte sljedeći kod.
<?php $movie[0]="Shaolin Monk"; $movie[1]="Drunken Master"; $movie[2]="American Ninja"; $movie[3]="Once upon a time in China"; $movie[4]="Replacement Killers"; echo $movie[3]; $movie[3] = " Eastern Condors"; echo $movie[3]; ?>
Izlaz:
Once upon a time in China Eastern Condors
Kao što možete vidjeti iz gornjih primjera, rad s nizovima u PHP-u kada se radi o višestrukim vrijednostima iste prirode vrlo je jednostavan i fleksibilan.
Alternativno, gore navedene varijable niza mogu se stvoriti pomoću sljedećeg koda.
<?php $movie = array(0 => "Shaolin Monk", 1 => "Drunken Master", 2 => "American Ninja", 3 => "Once upon a time in China", 4 => "Replacement Killers" ); echo $movie[4]; ?>
Izlaz:
Replacement Killers
PHP asocijativni niz
Asocijativni nizovi se razlikuju od numeričkih nizova po tome što asocijativni nizovi koriste opisna imena za ID ključeve.
U nastavku slijedi sintaksa za stvaranje asocijativnog niza u PHP-u.
<?php $variable_name['key_name'] = value; $variable_name = array('keyname' => value); ?>
OVDJE,
- “$variable_name…” je naziv varijable
- „['key_name']” je pristupni ključ elementa
- “vrijednost” je vrijednost dodijeljena elementu niza.
Pretpostavimo da imamo skupinu osoba i želimo dodijeliti spol svakoj osobi uz njihova imena.
Za to možemo koristiti asocijativni niz. Donji kod nam u tome pomaže.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); print_r($persons); echo ""; echo "Mary is a " . $persons["Mary"]; ?>
OVDJE,
Izlaz:
Array ( [Mary] => Female [John] => Male [Mirriam] => Female ) Mary is a Female
Asocijativni nizovi su također vrlo korisni pri dohvaćanju podataka iz baze podataka.
Nazivi polja koriste se kao ID ključevi.
PHP Višedimenzionalni nizovi
To su nizovi koji sadrže druge ugniježđene nizove.
Prednost višedimenzionalnih nizova je u tome što nam omogućuju grupiranje povezanih podataka.
Pogledajmo sada praktičan primjer koji implementira višedimenzionalni niz u PHP-u.
Donja tablica prikazuje popis filmova po kategorijama.
| Naslov filma | Kategorija |
|---|---|
| Pink Panther | Komedija |
| John English | Komedija |
| Die Hard | Akcijski |
| Expendables | Akcijski |
| Gospodar prstenova | Ep |
| Romeo i Julija | Romantika |
| Ne vidi zlo ne čuj zlo | Komedija |
Gore navedene informacije mogu se prikazati kao višedimenzionalni niz. Kod u nastavku prikazuje implementaciju.
<?php $movies = array( "comedy" => array("Pink Panther", "John English", "See no evil hear no evil"), "action" => array("Die Hard", "Expendables"), "epic" => array("The Lord of the rings"), "Romance" => array("Romeo and Juliet") ); print_r($movies); ?>
OVDJE,
Izlaz:
Array ( [comedy] => Array ( [0] => Pink Panther [1] => John English [2] => See no evil hear no evil ) [action] => Array ( [0] => Die Hard [1] => Expendables ) [epic] => Array ( [0] => The Lord of the rings ) [Romance] => Array ( [0] => Romeo and Juliet ) )
Drugi način definiranja istog niza je sljedeći.
<?php $film = array( "comedy" => array( 0 => "Pink Panther", 1 => "John English", 2 => "See no evil hear no evil" ), "action" => array ( 0 => "Die Hard", 1 => "Expendables" ), "epic" => array ( 0 => "The Lord of the rings" ), "Romance" => array ( 0 => "Romeo and Juliet" ) ); echo $film["comedy"][0]; ?>
Izlaz:
Pink Panther
Napomena: numerički niz filmova ugniježđen je unutar asocijativnog niza kategorija.
PHP polja: Operaulagatelji
| Operahumka | Ime | Description | Kako to učiniti | Izlaz |
|---|---|---|---|---|
| x+y | Unija | Kombinira elemente iz oba niza |
<?php $x = array('id' => 1); $y = array('value' => 10); $z = $x + $y; ?> |
Niz ([id] => 1 [vrijednost] => 10) |
| x == y | Jednak | Uspoređuje dva niza i vraća vrijednost true ako su jednaki |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x == $y) { echo "true"; } else { echo "false"; } ?> |
Istina ili 1 |
| x === y | Identičan | Uspoređuje i vrijednosti i Vrste podataka |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x === $y) { echo "true"; } else { echo "false"; } ?> |
Netočno ili 0 |
| x != y, x <> y | Nejednak | Vraća vrijednost true ako dva niza nisu jednaka |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x != $y) { echo "true"; } else { echo "false"; } ?> |
Netočno ili 0 |
| x !== y | Neidentičan | Vraća vrijednost true ako dva niza nisu identična po vrijednosti ili tipu |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x !== $y) { echo "true"; } else { echo "false"; } ?> |
Istina ili 1 |
PHP funkcije polja
Funkcija brojanja
Funkcija count koristi se za brojanje elemenata koje PHP niz sadrži. Donji kod prikazuje implementaciju.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo count($lecturers); ?>
Izlaz:
3
is_array funkcija
Funkcija is_array koristi se za određivanje je li varijabla niz ili ne. Pogledajmo sada primjer koji implementira funkciju is_array.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo is_array($lecturers); ?>
Izlaz:
1
Vrsta
Ova funkcija se koristi za sortiranje nizova po njihovim vrijednostima.
Ako su vrijednosti alfanumeričke, razvrstava ih abecednim redom.
Ako su vrijednosti numeričke, sortira ih uzlaznim redoslijedom.
Uklanja postojeće pristupne tipke i dodaje nove numeričke tipke.
Izlaz ove funkcije je numerički niz.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); sort($persons); print_r($persons); ?>
Izlaz:
Array ( [0] => Female [1] => Female [2] => Male )
ksort
Ova se funkcija koristi za sortiranje niza pomoću ključa. Sljedeći primjer ilustrira njegovu upotrebu.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); ksort($persons); print_r($persons); ?>
Izlaz:
Array ( [John] => Male [Mary] => Female [Mirriam] => Female )
asortiman
Ova funkcija koristi se za sortiranje niza pomoću vrijednosti dok keeping tipke. Sljedeći primjer ilustrira njegovu upotrebu.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); asort($persons); print_r($persons); ?>
Izlaz:
Array ( [Mary] => Female [Mirriam] => Female [John] => Male )
Zašto koristiti nizove?
- Sadržaj nizova može se rastegnuti kako bi sadržavao više vrijednosti.
- Nizovi lako pomažu u grupiranju povezanih informacija poput podataka za prijavu na poslužitelj.
- Nizovi pomažu u pisanju čistijeg koda.



