Return to Snippet

Revision: 40106
at January 26, 2011 07:32 by kendsnyder


Initial Code
function cycle(/*$val1, $val2, $valN*/) {
	static $counter = 0;
	$values = func_get_args();
	$length = count($values);
	if ($length == 0) {
		$counter = 0;
		return null;
	}
	return $values[$counter++ % $length];
}

// example usage
$i = 0;
while ($i++ < 5) {
	echo cycle('odd','even') . '<br>';
}

cycle(); // reset

$i = 0;
while ($i++ < 6) {
	echo cycle('a','b','c','d') . '<br>';
}

/*
output =>

odd
even
odd
even
odd
a
b
c
d
a
b
*/

Initial URL


Initial Description


Initial Title
Cycle or zebra between values

Initial Tags


Initial Language
PHP