Vullen van arrays

Om arrays te vullen hebben we twee manieren, de eerste manier zullen we voornamelijk gebruiken, als we een array op voorhand definiëren. De tweede als we een array gaandeweg aanvullen.

Als we het over arrays hebben, dan hebben we altijd een sleutel (key, index) en een waarde (value).

Array()

De eerste manier om een array te vullen is door gebruik te maken van de key => value-syntax:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>Arrays</title>
</head>
<body>
<?php
  $fruit = array("Appel" => "Groen", "Peer" => "Groen", "Banaan" => "Geel", "Kers" => "Rood", "Citroen" => "Geel", "Pruim" => "Paars", "Aardbei" => "Rood");
?>
<pre>Associatieve array
<?php print_r($fruit); ?></pre>
</body>
</html>

Of iets leesbaarder:

<?php
  $fruit = array(
    "Appel" => "Groen", 
    "Peer" => "Groen", 
    "Banaan" => "Geel", 
    "Kers" => "Rood", 
    "Citroen" => "Geel", 
    "Pruim" => "Paars", 
    "Aardbei" => "Rood");
?>
<pre>Associatieve array
<?php print_r($fruit); ?></pre>

Arrays waarvan de sleutel aangeduid wordt door een string-waarde, worden associatieve arrays genoemd. Numerieke arrays maken gebruik van een integer-waarde als sleutel:

<?php
$fruit = array(
    0 => "Groen", 
    1 => "Groen", 
    2 => "Geel", 
    3 => "Rood", 
    4 => "Geel", 
    5 => "Paars", 
    6 => "Rood");
?>
<pre>Nummerieke array
<?php print_r($fruit); ?></pre>

Bij het gebruik van numerieke arrays, beginnen we meestal op positie 0.

Een numerieke array kun je vullen zonder het opgeven van de numerieke indexen (keys). De index wordt dan automatisch aangemaakt (laatste index + 1). Dit is handig bij het vullen van een array met behulp van een lus.

<?php
for($jaar = 2012; $jaar <= 2050; $jaar += 4){
    $schrikkeljaren[] = $jaar;
}
?>
<pre>Numerieke array gevuld met een lus
<?php print_r($schrikkeljaren); ?></pre>

Soms speelt de exacte positie geen rol, en maken we volgende opsomming::

<?php $fruit = array("Groen", "Groen", "Geel", "Rood", "Geel", "Paars", "Rood"); ?>
<pre>Nummerieke array
<?php print_r($fruit); ?></pre>

Ook hier zal het eerste element automatisch op 0 beginnen en krijgt het volgende element de index 1, enz.

Als je gegevens wil bijvoegen bij een array kun je geen gebruik maken van de array()-functie of je moet gebruik maken van de functies array_push() en array_unshift(). Óf je maakt gebruik van volgende methode.

Vierkante haakjes [ ]

Om een array te wijzigen wordt de notatie met vierkante haken het meest gebruikt:

<?php
$assoc_fruit["Appel"] = "Groen";
$assoc_fruit["Peer"] = "Groen";
$assoc_fruit["Banaan"] = "Geel";
$assoc_fruit["Kers"] = "Rood";
$assoc_fruit["Citroen"] = "Geel";
$assoc_fruit["Pruim"] = "Paars";
$assoc_fruit["Aardbei"] = "Rood";
?>
<pre>Associatieve array aanpassen
<?php print_r($assoc_fruit); ?></pre>

Je kan op gelijkaardige manier ook gebruik maken van de nummers. Waarvan de meest eenvoudige vorm is:

<?php
$num_fruit[0] = "Groen";
$num_fruit[1] = "Groen";
$num_fruit[2] = "Geel";
$num_fruit[3] = "Rood";
$num_fruit[4] = "Geel";
$num_fruit[5] = "Paars";
$num_fruit[6] = "Rood";
?>
<pre>Numerieke array aanpassen
<?php print_r($num_fruit); ?></pre>

Je kunt dit gebruiken om een array die gedefinieerd is met array(), te wijzigen of gegevens toe te voegen.

Weergeven