php根据年月获取当月天数及日期数组的方法


Posted in PHP onNovember 30, 2016

本文实例讲述了php根据年月获取当月天数及日期数组的方法。分享给大家供大家参考,具体如下:

function get_day( $date )  
{
    $tem = explode('-' , $date); //切割日期 得到年份和月份
    $year = $tem['0'];
    $month = $tem['1'];
    if( in_array($month , array( 1 , 3 , 5 , 7 , 8 , 01 , 03 , 05 , 07 , 08 , 10 , 12)))
    {
      // $text = $year.'年的'.$month.'月有31天';
      $text = '31';
    }
    elseif( $month == 2 )
    {
      if ( $year%400 == 0 || ($year%4 == 0 && $year%100 !== 0) )    //判断是否是闰年
      {
        // $text = $year.'年的'.$month.'月有29天';
        $text = '29';
      }
      else{
        // $text = $year.'年的'.$month.'月有28天';
        $text = '28';
      }
    }
    else{
      // $text = $year.'年的'.$month.'月有30天';
      $text = '30';
    }
    return $text;
}
echo get_day('2016-8-1');

运行结果为:31

改造,返回日期数组:

/**
* 获取当月天数
* @param $date 
* @param $rtype 1天数 2具体日期数组
* @return 
*/
function get_day( $date ,$rtype = '1')  
{
    $tem = explode('-' , $date);    //切割日期 得到年份和月份
    $year = $tem['0'];
    $month = $tem['1'];
    if( in_array($month , array( 1 , 3 , 5 , 7 , 8 , 01 , 03 , 05 , 07 , 08 , 10 , 12)))
    {
      // $text = $year.'年的'.$month.'月有31天';
      $text = '31';
    }
    elseif( $month == 2 )
    {
      if ( $year%400 == 0 || ($year%4 == 0 && $year%100 !== 0) )    //判断是否是闰年
      {
        // $text = $year.'年的'.$month.'月有29天';
        $text = '29';
      }
      else{
        // $text = $year.'年的'.$month.'月有28天';
        $text = '28';
      }
    }
    else{
      // $text = $year.'年的'.$month.'月有30天';
      $text = '30';
    }
    if ($rtype == '2') {
      for ($i = 1; $i <= $text ; $i ++ ) {
        $r[] = $year."-".$month."-".$i;
      }
    } else {
      $r = $text;
    }
    return $r;
}
var_dump(get_day('2016-8-1','2'));

运行结果如下:

array(31) {
 [0]=>
 string(8) "2016-8-1"
 [1]=>
 string(8) "2016-8-2"
 [2]=>
 string(8) "2016-8-3"
 [3]=>
 string(8) "2016-8-4"
 [4]=>
 string(8) "2016-8-5"
 [5]=>
 string(8) "2016-8-6"
 [6]=>
 string(8) "2016-8-7"
 [7]=>
 string(8) "2016-8-8"
 [8]=>
 string(8) "2016-8-9"
 [9]=>
 string(9) "2016-8-10"
 [10]=>
 string(9) "2016-8-11"
 [11]=>
 string(9) "2016-8-12"
 [12]=>
 string(9) "2016-8-13"
 [13]=>
 string(9) "2016-8-14"
 [14]=>
 string(9) "2016-8-15"
 [15]=>
 string(9) "2016-8-16"
 [16]=>
 string(9) "2016-8-17"
 [17]=>
 string(9) "2016-8-18"
 [18]=>
 string(9) "2016-8-19"
 [19]=>
 string(9) "2016-8-20"
 [20]=>
 string(9) "2016-8-21"
 [21]=>
 string(9) "2016-8-22"
 [22]=>
 string(9) "2016-8-23"
 [23]=>
 string(9) "2016-8-24"
 [24]=>
 string(9) "2016-8-25"
 [25]=>
 string(9) "2016-8-26"
 [26]=>
 string(9) "2016-8-27"
 [27]=>
 string(9) "2016-8-28"
 [28]=>
 string(9) "2016-8-29"
 [29]=>
 string(9) "2016-8-30"
 [30]=>
 string(9) "2016-8-31"
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP中调用JAVA
Oct 09 PHP
PHP脚本数据库功能详解(下)
Oct 09 PHP
发款php蜘蛛统计插件只要有mysql就可用
Oct 12 PHP
Opcache导致php-fpm崩溃nginx返回502
Mar 02 PHP
推荐十款免费 WordPress 插件
Mar 24 PHP
PHP查看当前变量类型的方法
Jul 31 PHP
学习php设计模式 php实现门面模式(Facade)
Dec 07 PHP
php进行ip地址掩码运算处理的方法
Jul 11 PHP
PHP截取发动短信内容的方法
Jul 04 PHP
PHP实现可添加水印与生成缩略图的图片处理工具类
Jan 16 PHP
laravel 框架实现无限级分类的方法示例
Oct 31 PHP
PHP读取文件或采集时解决中文乱码
Mar 09 PHP
详解PHP处理密码的几种方式
Nov 30 #PHP
php+js实现百度地图多点标注的方法
Nov 30 #PHP
php 运算符与表达式详细介绍
Nov 30 #PHP
PHP AjaxForm提交图片上传并显示图片源码
Nov 29 #PHP
php判断是否为ajax请求的方法
Nov 29 #PHP
PHP判断文件是否被引入的方法get_included_files用法示例
Nov 29 #PHP
php获取开始与结束日期之间所有日期的方法
Nov 29 #PHP
You might like
多php服务器实现多session并发运行
2006/10/09 PHP
php获取某个目录大小的代码
2008/09/10 PHP
php disk_free_space 返回目录可用空间
2010/05/10 PHP
php与c 实现按行读取文件实例代码
2017/01/03 PHP
php curl常用的5个经典例子
2017/01/20 PHP
php表单文件iframe异步上传实例讲解
2017/07/26 PHP
PHP SPL 被遗落的宝石【SPL应用浅析】
2018/04/20 PHP
javascript之对系统的toFixed()方法的修正
2007/05/08 Javascript
javascript权威指南 学习笔记之null和undefined
2011/09/25 Javascript
JavaScript 函数replace深入了解
2013/03/14 Javascript
seaJs的模块定义和模块加载浅析
2014/06/06 Javascript
原生javascript实现Tab选项卡切换功能
2015/01/12 Javascript
分享javascript计算时间差的示例代码
2020/03/19 Javascript
javascript基本语法
2016/05/31 Javascript
JS搜狐面试题分析
2016/12/16 Javascript
动态创建Angular组件实现popup弹窗功能
2017/09/15 Javascript
详解Angular如何正确的操作DOM
2018/07/06 Javascript
微信小程序云开发实现增删改查功能
2019/05/17 Javascript
[00:29]2019完美世界全国高校联赛(秋季赛)总决赛海口落幕
2019/12/10 DOTA
Python实现把json格式转换成文本或sql文件
2015/07/10 Python
python常见的格式化输出小结
2016/12/15 Python
Python实现将文本生成二维码的方法示例
2017/07/18 Python
一个Python最简单的接口自动化框架
2018/01/02 Python
Python2和Python3的共存和切换使用
2019/04/12 Python
python机器学习包mlxtend的安装和配置详解
2019/08/21 Python
Python实现多线程/多进程的TCP服务器
2019/09/03 Python
Python实现把多维数组展开成DataFrame
2019/11/30 Python
pytorch sampler对数据进行采样的实现
2019/12/31 Python
学会迭代器设计模式,帮你大幅提升python性能
2021/01/03 Python
如何让IE9以下版本(ie6/7/8)认识html5元素
2013/04/01 HTML / CSS
工商企业管理实习自我鉴定
2013/12/04 职场文书
群众路线批评与自我批评发言稿
2014/10/16 职场文书
二审答辩状范文
2015/05/22 职场文书
python基于tkinter制作m3u8视频下载工具
2021/04/24 Python
Python爬虫基础之爬虫的分类知识总结
2021/05/13 Python
浅谈MySQL表空间回收的正确姿势
2021/10/05 MySQL