4.21 Einen Kartenstapel mischen
Problem
Sie möchten einen Stapel Spielkarten mischen und ausgeben.
Lösung
Legen Sie ein Array mit 52 Integer-Zahlen an, mischen Sie es, und bilden Sie es auf die Spielkarten ab:
$farben = array('Kreuz', 'Pik', 'Herz', 'Karo'); $karten = array('Ass', 2, 3, 4, 5, 6, 7, 8, 9, 10, 'Bube', 'Dame', 'König'); $stapel = pc_array_shuffle(range(0, 51)); while (($zug = array_pop($stapel)) != NULL) { print $farben[$zug % 4] . $karten[$zug / 4] . "\n"; }
Dieses Programm verwendet die Funktion pc_array_shuffle( )
aus „4.20 Ein Array in eine zufällige Reihenfolge bringen“.
Diskussion
Hier werden die zwei Arrays $farben
und $karten
angelegt, die deutsche Spielkarten repräsentieren sollen. Die Zahlen 0
bis 51
werden zufällig angeordnet ...
Get PHP 5 Kochbuch now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.