Das Paradebeispiel für dieses Skript ist das wechselnde einfärben von Tabellenzeilen.
Man kann es natürlich auch für andere Sachen verwenden.
Die Anzahl der Parameter ist hier variabel.
Im Beispiel wird eine Folge von RGB Farben übergeben.
Beim Aufruf wird jeweils einer dieser Werte der Reihe nach zurückgegeben.
Wird die Funktion ohne Parameter aufgerufen, so wird der interne Zähler zurückgesetzt.
<?php
/**
* Abfolge von n Farben
*/
function Cycle_Values ($values=false)
{
static $n = 0;
if(!$values){
$n = 0;
return 1;
} else {
$values = func_get_args();
}
if ($n >= count($values)) {
$n = 0;
}
$c = $values[$n];
$n++;
return $c;
}
print '<table>';
for ($i = 1; $i < 40; $i++) {
$col = Cycle_Values( '#6534CB', '#FF8000','#00B900', '#cc0000','#00cc00', '#0000cc', '#e1e1e1','#d1d1d1');
if ($i % 7 == 0) {
Cycle_Values(); # reset
}
printf ('<tr><td bgcolor="%s">%s %s</td></tr>',$col,$i,$col);
}
print '</table>';
?>