当前位置: 代码迷 >> PHP >> //将数组中的元素是五的倍数的元素输出到下拉菜单 //将数组中的元素放在<li>标签中,奇偶li背景不同 //将数组中元素是数字型的找出来
  详细解决方案

//将数组中的元素是五的倍数的元素输出到下拉菜单 //将数组中的元素放在<li>标签中,奇偶li背景不同 //将数组中元素是数字型的找出来

热度:423   发布时间:2016-04-28 17:16:13.0
//将数组中的元素是5的倍数的元素输出到下拉菜单 //将数组中的元素放在<li>标签中,奇偶li背景不同 //将数组中元素是数字型的找出来
求赐教

//将数组中的元素是5的倍数的元素输出到下拉菜单
//将数组中的元素放在<li>标签中,奇偶li背景不同
//将数组中元素是数字型的找出来
------解决思路----------------------

<?php 
//将数组中的元素是5的倍数的元素输出到下拉菜单
$arr = array(1,2,3,5,15,25);

$option = array_reduce($arr, function($r, $item){return $r.($item%5==0 ? "<option>".$item."</option>" : "");});

echo "<select>$option</select>";
//将数组中的元素放在<li>标签中,奇偶li背景不同
$i = 0;
$li = implode("", array_map(function ($n) use (&$i){$i++; return $i%2 == 0 ? "<li style='background-color:red;'>$n</li>" : "<li style='background-color:blue;'>$n</li>";}, $arr));
echo "<ul>$li</ul>";

//将数组中元素是数字型的找出来
$arr = array(1,2,3,5,15,25, '12312','sdfsdf', 'asdasd123');
$r = array_reduce($arr, function ($r, $item){is_null($r) && $r = array();return is_numeric($item) ? array_merge($r, array($item)) : $r; });
print_r($r);
?>