Arrays in PHP begrijpen

In dit bericht leer je de basisprincipes van arrays in PHP. U leert hoe u een array maakt en hoe u associatieve en multidimensionale arrays gebruikt, en u ziet veel voorbeelden van arrays in actie.

Wat is een array?

In PHP is een array een gegevensstructuur waarmee u meerdere elementen in één variabele kunt opslaan. Deze elementen worden opgeslagen als sleutel / waarde-paren. In feite kunt u een array gebruiken wanneer er een behoefte is om een ​​lijst met elementen op te slaan. Vaker wel dan niet hebben alle items in een array vergelijkbare gegevenstypen.

Laten we bijvoorbeeld zeggen dat u fruitnamen wilt opslaan. Zonder een array zou u uiteindelijk meerdere variabelen maken om de verschillende fruitnamen op te slaan. Aan de andere kant, als u een array gebruikt om fruitnamen op te slaan, ziet het er als volgt uit:

Zoals u kunt zien, hebben we de $ array_fruits variabele om de verschillende fruitnamen op te slaan. Een groot voordeel van deze aanpak is dat je meer elementen aan de. Kunt toevoegen $ array_fruits matrixvariabele later.

Er zijn tal van manieren om waarden in de arrayvariabele te manipuleren - we zullen deze in het laatste deel van dit artikel onderzoeken.

Hoe een array te initialiseren

In deze sectie zullen we onderzoeken hoe een arrayvariabele kan worden geïnitialiseerd en waarden in die variabele kunnen worden toegevoegd.

Als het gaat om array-initialisatie, zijn er een paar verschillende manieren. In de meeste gevallen is het de array () taalconstructie die wordt gebruikt om een ​​array te initialiseren.

In het bovenstaande fragment, de $ serie variabele wordt geïnitialiseerd met een lege array.

Vanaf PHP 5.4 kunt u ook de volgende syntaxis gebruiken om een ​​array te initialiseren.

Laten we nu kijken hoe elementen aan een array kunnen worden toegevoegd.

'; print_r ($ array); ?>

Het bovenstaande fragment moet de volgende uitvoer produceren:

Array ([0] => Eén [1] => Twee [2] => Drie)

Het belangrijkste om op te merken is dat een arrayindex begint met 0. Telkens wanneer u een nieuw element aan een array toevoegt zonder een index op te geven, kent de array automatisch een index toe.

U kunt natuurlijk ook een array maken die al met waarden is geïnitialiseerd. Dit is de meest beknopte manier om een ​​array te declareren als je al weet welke waarden het heeft.

Toegang krijgen tot array-elementen

In de vorige sectie hebben we besproken hoe een arrayvariabele kan worden geïnitialiseerd. In deze sectie zullen we een aantal verschillende manieren verkennen om toegang te krijgen tot array-elementen.

De eerste voor de hand liggende manier om array-elementen te benaderen, is ze op te halen via de arraysleutel of index.

"; // verkrijg het tweede element van de array $ array echo $ array [1]; echo"
"; // verkrijg het derde element van de array $ array echo $ array [2]; echo"
";?>

Het bovenstaande fragment moet de volgende uitvoer produceren:

Een twee drie

Een schonere manier om de bovenstaande code te schrijven is om a te gebruiken foreach lus om door de array-elementen te itereren.

'; ?>

Het bovenstaande fragment moet dezelfde uitvoer produceren en er is veel minder code voor nodig.

Op dezelfde manier kunt u ook de voor lus om door de array-elementen te gaan.

'; ?>

Hier gebruiken we de voor om door elke index in de array te gaan en vervolgens de waarde te herhalen die in die index is opgeslagen. In dit fragment hebben we een van de belangrijkste functies geïntroduceerd die u uiteindelijk zult gebruiken tijdens het werken met arrays: tellen. Het wordt gebruikt om te tellen hoeveel elementen in een array zitten.

Soorten arrays in PHP

In dit gedeelte bespreken we de verschillende soorten array die u in PHP kunt gebruiken.

Numeriek geïndexeerde reeksen

Een array met de numerieke index valt in de categorie van een geïndexeerde array. In feite zijn de voorbeelden die we tot nu toe in dit artikel hebben besproken, geïndexeerde arrays.

De numerieke index wordt automatisch toegewezen wanneer u deze niet expliciet opgeeft.

In het bovenstaande voorbeeld specificeren we niet expliciet een index voor elk item, dus het wordt automatisch geïnitialiseerd met de numerieke index.

U kunt natuurlijk ook een geïndexeerde array maken met behulp van de numerieke index, zoals in het volgende fragment wordt getoond.

Associatieve reeksen

Een geassocieerde array is vergelijkbaar met een geïndexeerde array, maar u kunt tekenreekswaarden gebruiken voor array-sleutels.

Laten we eens kijken hoe we een associatieve array definiëren.

 'John', 'email' => '[email protected]', 'phone' => '1234567890',];

Als alternatief kunt u ook de volgende syntaxis gebruiken.

Om toegang te krijgen tot de waarden van een associatieve array, kunt u de index of de gebruiken foreach lus.

 'John', 'email' => '[email protected]', 'phone' => '1234567890',]; // verkrijg de waarde van de naam van de werknemer echo $ employee ['name']; // krijg alle waarden voor elk ($ werknemer als $ sleutel => $ waarde) echo $ sleutel. ':'. $ Value; echo '
'; ?>

Zoals u kunt zien, hebben we hier de naam opgevraagd door deze rechtstreeks te doorzoeken en hebben we de naam gebruikt foreach loop om alle sleutel / waarde-paren in de array te krijgen.

Multidimensionale arrays

In de voorbeelden die we tot nu toe hebben besproken, hebben we scalaire waarden gebruikt als array-elementen. In feite kunt u zelfs arrays opslaan als elementen in andere arrays - dit is een multidimensionale array.

Laten we een voorbeeld bekijken.

 'John', 'email' => '[email protected]', 'phone' => '1234567890', 'hobbies' => ['Voetbal', 'Tennis'], 'profielen' => ['facebook' => 'johnfb', 'twitter' => 'johntw']]; ?>

Zoals u kunt zien, de hobbies toets in de $ werknemer array bevat een reeks hobby's. Op dezelfde manier, de profielen sleutel bevat een associatieve array van de verschillende profielen.

Laten we kijken hoe toegang te krijgen tot waarden van een multidimensionale array.

 'John', 'email' => '[email protected]', 'phone' => '1234567890', 'hobbies' => ['Voetbal', 'Tennis'], 'profielen' => ['facebook' => 'johnfb', 'twitter' => 'johntw']]; // toegangshobby's echo $ employee ['hobby's'] [0]; // Voetbal echo $ werknemer ['hobby's'] [1]; // Tennis // toegangsprofielen echo $ employee ['profiles'] ['facebook']; // johnfb echo $ employee ['profiles'] ['twitter']; // johntw?>

Zoals u kunt zien, kunnen de elementen van een multidimensionale array worden geopend met de index of sleutel van dat element in elk arrayonderdeel.

Enkele handige matrixfuncties

In dit gedeelte zullen we een handvol handige array-functies doornemen die vaak worden gebruikt voor array-bewerkingen.

De tellen Functie

De tellen functie wordt gebruikt om het aantal elementen in een array te tellen. Dit is vaak handig als u een array wilt herhalen met een voor lus.

De is_array Functie

Dit is een van de nuttigste functies voor het omgaan met arrays. Het wordt gebruikt om te controleren of een variabele een array of een ander gegevenstype is.

U moet deze functie altijd gebruiken voordat u een arraybewerking uitvoert als u niet zeker bent van het gegevenstype.

De in_array Functie

Als u wilt controleren of een element in de array bestaat, is dit de in_array functie die te hulp komt.

Het eerste argument van de in_array functie is een element dat u wilt controleren, en het tweede argument is de array zelf.

De ontploffen Functie

De ontploffen functie splitst een string in meerdere delen en retourneert deze als een array. Stel dat u een door komma's gescheiden tekenreeks hebt en deze wilt splitsen op de komma's.

'; print_r ($ array); // output / * Array ([0] => Eén [1] => Twee [2] => Drie) * /?>

Het eerste argument van de ontploffen function is een scheidingstekenreeks (de tekenreeks die u aan het splitsen bent) en het tweede argument is de tekenreeks zelf.

De imploderen Functie

Dit is het tegenovergestelde van de ontploffen functie gegeven een array en een lijmstring, de imploderen functie kan een string genereren door alle elementen van een array met elkaar te combineren met een lijmstring.

Het eerste argument van de imploderen functie is een lijmstring en het tweede argument is de array die moet worden geïmplodeerd.

De array_push Functie

De array_push functie wordt gebruikt om nieuwe elementen aan het einde van een array toe te voegen.

'; print_r ($ array); // output / * Array ([0] => Eén [1] => Twee [2] => Drie [3] => Vier) * /?>

Het eerste argument is een array en de volgende argumenten zijn elementen die aan het einde van een array worden toegevoegd.

De array_pop Functie

De array_pop functie verwijdert een element uit het einde van een array.

'; print_r ($ array); // output / * Array ([0] => Eén [1] => Twee) * /?>

De array_pop functie retourneert het element dat uit een array is verwijderd, dus u kunt het naar de variabele slepen. Samen met array_push, deze functie is handig voor het implementeren van datastructuren zoals stacks.

Conclusie

Dat is alles wat je nodig hebt om te beginnen met het coderen met arrays in PHP. Je zag hoe je arrays kunt maken en hoe je er elementen uit kunt halen. Je hebt de verschillende soorten arrays in PHP geleerd en je hebt een paar van de handigste ingebouwde PHP-functies voor het werken met arrays bekeken.