foreach with cycle / alternate选项

时间:2011-09-23 16:48:57

标签: php foreach

我正在寻找一种在foreach循环中循环/替代2值的最快(性能)方法。与聪明的作品完全相同:http://www.smarty.net/docsv2/en/language.function.cycle

2 个答案:

答案 0 :(得分:1)

使用模运算符可以轻松进行循环。

$cycle = $iteration % $cycles;

例如,如果$cycles 2 ,则$cycle将包含 0 1 ,其中{ {1}}增加。

然后,如果您需要这些周期的特定值,请使用查找表:

$iteration

$lookup = array('value1', 'value2'); $value = $lookup[$cycle]; 循环不会跟踪迭代;您想要使用foreach循环代替。或者自己增加一个迭代变量。

答案 1 :(得分:0)

$cycle = array('value1', 'value2');
$i = 0;

foreach (...) {
    $cycle[$i] // current cycle value
    ...
    $i = 1 - $i; // here be cycling
}

P.S。在这种情况下,不要认为你应该非常关注表现。