博客列表 >Day33-2018/1/8(数组函数应用)

Day33-2018/1/8(数组函数应用)

SmallKing的博客
SmallKing的博客原创
2018年01月09日 20:12:57643浏览

自己举例进行数组的三个回调函数的演示操作:
1. array_filter()
2. array_walk()
3. array_map()

  1. 输出2000-2200年为闰年的年份。

  2. 要求输出结果年份为中文汉字表示。

<?php
//生成2000-2200年
$year=range(2000,2200);
//筛选2000-2200年为润年的年份array_filter函数
$year_leap=array_filter($year,function ($year){
   if ($year%400==0||($year%4==0&&$year%100!=0)) {
       return true;
   }else return false;
});
echo "<pre>";
echo "<h1 style='text-align: center'>2000-2200年闰年表</h1>";
//将闰年变量重新排列
$year_leap=array_values($year_leap);
echo "<hr>";
//数字转为汉字函数(通过递归调用完成)
function NumberToWord($number){
    $Chinese_num=array('零', '一', '二', '三','四', '五', '六', '七', '八', '九');
    if (floor($number/10)==0) return $Chinese_num[$number%10];
    else {
        return NumberToWord(floor($number/10),$Chinese_num).$Chinese_num[$number%10];
    }
}
//$a=NumberToWord(2022,$Chinese_num);
//echo $a;
//利用array_map将闰年数组的数字中文化。
$year_leap=array_map("NumberToWord",$year_leap);
//用array——walk遍历,格式输出结果集
array_walk($year_leap,function ($value,$key,$p){
    echo "<span style='width: 230px;float: left;border: solid 1px white;margin: 1px;text-align: center;background-color:rgba(6,7,105,0.63);color: lightgrey;font-size: 1.5em;border-radius: 5px'>第" .($key+1)."个闰年是".$p.$value."</span>";
},"->");

QQ图片20180109200631.png

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议