Moin!
Die Teilaufgabe ist, einem Array (es ist eine Art to-do-Liste) (anspruchslos) zufällig Schlüssel und Werte zu entnehmen und anschließend aus dem Array zu entfernen. Außerdem können "außer der Reihe" über den Schlüssel Paare entfernt werden. Irgendwann ist das Array dann leer. Deshalb würde sich der Rückgabewert zur Auswertung anbieten.
Da würde ich exakt EINMAL mit shuffle() das Array durchmischen und es danach mit foreach iterieren - schon hast du wunderbaren Zufall, ohne den Overhead des Entfernens von Arrayelementen oder der Prüfung, ob array_rand mit leeren Arrays kann oder nicht.
- Sven Rautenberg