PHP-lessen - les 11 - Functies voor werken met strings en arrays
We kennen inmiddels verschillende gegevenstypen en enkele functies om ermee te werken. In PHP bestaan er echter enorm veel ingebouwde functies — zoveel zelfs dat een volledig overzicht meerdere boeken zou vullen. Daarom zullen we in deze les alleen de meest gebruikte bekijken. Laten we beginnen met hoe je een array kunt omzetten naar een string en omgekeerd — van een string weer een array kunt maken.
PHP – van array naar string met implode()
Laten we een voorbeeld bekijken:
<?php $colors = array(1 => 'geel', 2 => 'rood', 3 => 'blauw'); // array definiëren $string = implode(',', $colors); // array omzetten naar string print $string; // string weergeven ?>
Als resultaat worden alle kleuren als één string weergegeven, gescheiden door komma’s. In de functie implode()
geven we als eerste parameter aan welk scheidingsteken we willen gebruiken in de string, en als tweede parameter de array zelf. Simpel, toch? Laten we nu het omgekeerde doen: een string omzetten in een array.
PHP – van string naar array met explode()
En opnieuw een voorbeeld:
<?php $colors = array(1 => 'geel', 2 => 'rood', 3 => 'blauw'); // array definiëren $string = implode(',', $colors); // array omzetten naar string $string .= ',zwart,wit'; // nog een paar kleuren toevoegen $newArray = explode(',', $string); // string weer omzetten naar array print_r($newArray); // array afdrukken ?>
Als resultaat worden alle kleuren weergegeven, inclusief de toegevoegde. Merk op dat de functie explode()
de elementen automatisch hernummerd vanaf 0. Dus het vijfde element van de array heeft de sleutel 4. De eerste parameter van explode()
is het scheidingsteken, en de tweede parameter is de string zelf.
PHP – lengte van een string en van een array
Soms moeten we de lengte van een string of array bepalen. Bij korte waarden kun je dat nog handmatig tellen, maar bij langere gegevens (bijvoorbeeld 300 tekens of 500 elementen) gebruiken we liever ingebouwde functies:
$colors = array(1 => 'geel', 2 => 'rood', 3 => 'blauw'); $string = implode(',', $colors); $string .= ',zwart,wit'; $newArray = explode(',', $string); print strlen($string); // lengte van de string weergeven
Met de functie strlen()
kun je eenvoudig de lengte van een string bepalen — handig en snel. In mijn geval was de lengte 35 tekens.
Ook een array heeft een lengte — namelijk het aantal elementen dat erin zit. Hiervoor gebruiken we de functie count()
:
$colors = array(1 => 'geel', 2 => 'rood', 3 => 'blauw'); $string = implode(',', $colors); $string .= ',zwart,wit'; $newArray = explode(',', $string); print count($newArray); // aantal elementen in de array tellen
Het resultaat is 5, omdat de array vijf elementen bevat. Simpel en efficiënt! In een later hoofdstuk zal ik een volledige lijst maken van de PHP-functies die met strings en arrays werken, maar voor nu heb je aan deze voorbeelden genoeg om te begrijpen hoe je PHP-functies gebruikt.