PHP Basis: Array

Slides

Arrays in PHP 1

Arrays in PHP 2

[pdf][pptx (bronbestand)]

Beschrijving

Array is een datatype van een variabele dat een “lijst” van waarden kan bevatten. Je kunt hiermee dus meerdere waarden in een variabele opslaan.

Arrays bestaan uit key => value paren.

Twee soorten arrays: indexed en associative

Bij een indexed array is de key een integer (een nummer). Bij een associative array is de key een String (een tekst).

Voorbeeld

Indexed array

Bij het maken van een indexed array hoef je zelf niet de keys op te geven. Die genereert PHP zelf:


$capitals = ["London", "Amsterdam", "Paris"];

Is hetzelfde als:

$capitals = [
    0 => "London",
    1 => "Amsterdam",
    2 => "Paris"
];

“Amsterdam” op het scherm tonen:


echo $capitals[1];

LET OP De index begint met tellen bij 0

Associative array

Deze array wordt gebruikt om key-value paren in op te slaan. Je ‘associeert’ (koppelt) waarden met keys. De waarden zijn vervolgens op te vragen op basis van de key in plaats van de index bij een indexed array. Bijvoorbeeld:

$person = [
    "name" => "Linus Torvalds",
    "born" => "Helsinki",
    "project" => "Linux"
];

Wat zou onderstaande code weergeven op het scherm?

echo $person["name"] . " is known for " . $person["project"];

Arrays in arrays

Een array kan waarden van elk datatype bevatten. Dus kan een array ook in een andere array zitten.

Voorbeeld 1

$capitals = [
    ["Amsterdam", "Netherlands", 869709],
    ["London", "United Kingdom", 8674713],
    ["Paris", "France", 2249975]
];

echo $capitals[0][0] . " has a population of " . $capitals[0][2];

Voorbeeld 2

// lijst met persoonsgegevens. Elk item in de array $personen is ook weer een array
$persons = [
    ['firstname' => 'Napoleon', 'lastname' => 'Bonaparte'],
    ['firstname' => 'Willem', 'lastname' => 'van Oranje'],
    ['firstname' => 'Horatio', 'lastname' => 'Nelson']
];

// toon 'Willem van Oranje' op het scherm
echo $persons[1]['firstname'] . ' ' . $persons[1]['lastname'];

Externe Documentatie

De officiële PHP documentatie mbt arrays vind je op:

https://php.net/array