Php – Zufällige Werte aus einem Array auswählen

Zur zufälligen Auswahl von Werten aus einem Array bietet sich die Funktion ‚array_rand()‘ an. Die Funktion wählt einen oder mehrere Einträge aus dem Array aus und liefert den einen Schlüssel des zufälligen Elementes bzw. die Schlüssel der zufälligen Elemente zurück.

Notation:
array_rand( $array $input [int] )

Wenn nur eine Element ausgewählt wird, liefert ‚array_rand()‘ den Schlüssel eines zufälligen Elementes.

$dyn_key = array_rand( $array, 1 );

Den entsprechenden Wert zu dem zufälligen Schlüssel erhält man dann so:

$dyn_value =  $array[$dyn_key];

Sollen mehrere Schlüssel aus dem Array ausgelesen werden, übergibt man die gewünschte Anzahl der Funktion:

$dyn_keys = array_rand( $array, 3 );

Hier sollen jetzt drei zufällige Schlüssel aus dem Array ausgelesen werden. Falls mehr Schlüssel ausgelesen werden sollen als Schlüssel im Array vorhanden sind, wird eine Fehlermeldung der Stufe Warnung ausgegeben. Die entsprechenden Werte zu den zufälligen Schlüsseln erhält man dann so:

$dyn_value_1 = $array[$dyn_keys[0]]
$dyn_value_2 = $array[$dyn_keys[1]]
$dyn_value_3 = $array[$dyn_keys[2]]

Es gibt noch andere Möglichkeiten zur zufälligen Auswahl von Elementen aus einem Array. Die obige ist mein persönlicher Favorit. Wozu beaucht man sowas überhaupt? Man denke an dynamisch generierten Content, welcher durch zufällige Bindewörter oder Satzbestandteile verknüpft wird ;-).

Schreibe einen Kommentar