白衣非少年
这里还有一个,$str= "odd,";for ($i = 1; $i < 11; $i++){ $t = str_repeat($i % 2, 2); $str.= (intval($t) ? str_replace("1","even,",$t):'odd,');}echo rtrim($str,',');输出:-odd,even,even,odd,even,even,odd,even,even,odd,even,even,odd,even,even,odd
白板的微信
对于以下系列: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21您还可以从第 2 个位置(基于 0 的索引)开始将每个第 4 个元素与其下一个元素交换,以生成如下所示的系列:1, 2, 4, 3, 5, 6, 8, 7, 9, 10, 12, 11, 13, 14, 16, 15, 17, 18, 20, 19, 21代码:<?php$arr = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21];$i = 2;$size = count($arr);while($i < $size-1){ swap($arr,$i); $i += 4;}function swap(&$arr,$i){ $temp = $arr[$i]; $arr[$i] = $arr[$i + 1]; $arr[$i + 1] = $temp;}foreach($arr as $val){ echo $val % 2 === 0 ? "even , " : "odd , ";}演示: https : //3v4l.org/htgMJ