Arrays (lijsten)

Stel ik wil voor het galgje spelletje een lijst met woorden bijhouden die in het spel gebruikt kunnen worden:

Bijvoorbeeld de volgende woorden die ik vond op internet bij lastige galgje woorden:

jazz, score, etui, cactus, liquidatie, oase, junior en curry

Deze kun je in php in een lijst opslaan op de volgende manier:

$woorden = array("jazz", "score", "etui", "cactus", "liquidatie", "oase", "junior" en "curry");

Index

De vraag is nu hoe je een woord uit de array haalt. Je moet immers op een ondubbelzinnige manier naar het juiste woord kunnen verwijzen. Daarom krijgt elke waarde in een array een zogenaamde index. Als je dat niet aangeeft doet php dat automatisch.

Het eerste woord in de array krijgt de index 0, het tweede 1 enz.. Je kan dan op de volgende manier het woord etui uit de array halen:

$kieswoord = $woorden[2];
echo $kieswoord;

Stel dat je de gebruiker ook de gelegenheid heeft om zelf woorden toe te voegen aan het einde van de array:

$nieuwwoord = trim(fgets(STDIN));
$woorden[] = $nieuwwoord;

Debug

Wil je weten wat er in een array zit dan kun je deze niet eenvoudig met een echo tonen. Het kan wel met de volgende functies:

print_r($woorden);
var_dump($woorden);

Array functies

Een lijst met functies kan je hier vinden: https://www.php.net/manual/en/ref.array.php

String en array's

Wist je dat een string ook een soort array is? Een gewone string kunnen we ook op deze manier uitlezen:

$tekst = "daan";
echo $tekst[3]; // output is "n"

Je kan met een for loop (zie herhaling) dus letter voor letter uit een string halen.

for($x = 0; $x < strlen($tekst); $x++) {
    echo $tekst[$x] . " - ";
}

// output is "d - a - a - n - "
Opdracht 7a woordenlijst

Maak een script met functions/taken die het volgende kan:

  • Woord toevoegen aan het einde van array
  • Woordenlijst tonen
  • Woord verwijderen
  • Woord toevoegen aan begin van array
  • Lengte lijst tonen
  • Willekeurig woord kiezen
  • Bedenk nog 2 functies

Antwoord insturen

Challenges Samenvatting (cheat sheet)