分享3个php获取日历的函数_php技巧

提供一个日期,获取这个日期的星期对应日历列表,键为星期标示

$month_date = '2015-09-25';
$start_time = strtotime($month_date);
$start_week = date('w', $start_time);
$total_month_day = date('t', $start_time);

$weeks_in_month = ceil(($start_week+$total_month_day)/7);

$month_day_arr = [];
$start_month_day = 1;
for($i=0;$i<$weeks_in_month;$i++) {

  for($j=0;$j<7;$j++){
    if($i ==0 && $j >= $start_week) {
      $month_day_arr[$i][$j] = $start_month_day;
      $start_month_day++;
    } elseif($i == 0) {
      $month_day_arr[$i][$j] = '';
    } else {
      $month_day_arr[$i][$j] = $start_month_day;
      $start_month_day++;
    }

    if($start_month_day > $total_month_day){
      break;
    }
  }
}

echo "<pre>";
print_r($month_day_arr);

Array
(
  [0] => Array
    (
      [0] =>
      [1] =>
      [2] => 1
      [3] => 2
      [4] => 3
      [5] => 4
      [6] => 5
    )

  [1] => Array
    (
      [0] => 6
      [1] => 7
      [2] => 8
      [3] => 9
      [4] => 10
      [5] => 11
      [6] => 12
    )

  [2] => Array
    (
      [0] => 13
      [1] => 14
      [2] => 15
      [3] => 16
      [4] => 17
      [5] => 18
      [6] => 19
    )

  [3] => Array
    (
      [0] => 20
      [1] => 21
      [2] => 22
      [3] => 23
      [4] => 24
      [5] => 25
      [6] => 26
    )

  [4] => Array
    (
      [0] => 27
      [1] => 28
      [2] => 29
      [3] => 30
    )

)

     获取指定日期所在月的开始日期与结束日期

/**
   * @param string $date
   * @param boolean 为true返回开始日期,否则返回结束日期
   * @return array
   * @access private
   */
  private function getMonthRange( $date, $returnFirstDay = true ) {
    $timestamp = strtotime( $date );
    if ( $returnFirstDay ) {
      $monthFirstDay = date( 'Y-m-1 00:00:00', $timestamp );
      return $monthFirstDay;
    } else {
      $mdays = date( 't', $timestamp );
      $monthLastDay = date( 'Y-m-' . $mdays . ' 23:59:59', $timestamp );
      return $monthLastDay;
    }
  }

获取当前星期的日期范围,也就是从星期一到星期日的日期范围。

  function getWeekRange($date){
  $ret=array();
  $timestamp=strtotime($date);
  $w=strftime('%u',$timestamp);
  $ret['sdate']=date('Y-m-d 00:00:00',$timestamp-($w-1)*86400);
  $ret['edate']=date('Y-m-d 23:59:59',$timestamp+(7-$w)*86400);
  return $ret;
  }
  //author:zhxia 获取指定日期所在月的开始日期与结束日期
  function getMonthRange($date){
  $ret=array();
  $timestamp=strtotime($date);
  $mdays=date('t',$timestamp);
  $ret['sdate']=date('Y-m-1 00:00:00',$timestamp);
  $ret['edate']=date('Y-m-'.$mdays.' 23:59:59',$timestamp);
  return $ret;
  }
  //author:zhxia 以上两个函数的应用
  function getFilter($n){
  $ret=array();
  switch($n){
  case 1:// 昨天
  $ret['sdate']=date('Y-m-d 00:00:00',strtotime('-1 day'));
  $ret['edate']=date('Y-m-d 23:59:59',strtotime('-1 day'));
  break;
  case 2://本星期
  $ret=getWeekRange(date('Y-m-d'));
  break;
  case 3://上一个星期
  $strDate=date('Y-m-d',strtotime('-1 week'));
  $ret=getWeekRange($strDate);
  break;
  case 4: //上上星期
  $strDate=date('Y-m-d',strtotime('-2 week'));
  $ret=getWeekRange($strDate);
  break;
  case 5: //本月
  $ret=getMonthRange(date('Y-m-d'));
  break;
  case 6://上月
  $strDate=date('Y-m-d',strtotime('-1 month'));
  $ret=getMonthRange($strDate);
  break;
  }
  return $ret;
  }

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索php
, 获取月份天数
, php获取当前月份
php获取当前日历
日历女孩百度网盘分享、朝夕日历使用技巧、iphone日历使用技巧、华为荣耀日历使用技巧、outlook如何分享日历,以便于您获取更多的相关知识。

时间: 2024-09-02 06:17:18

分享3个php获取日历的函数_php技巧的相关文章

php简单日历函数_php技巧

本文实例讲述了php实现的日历程序.分享给大家供大家参考.具体如下: <?php /* * php 输出日历程序 */ header("Content-type: text/html;charset=utf-8"); $year=(!isset($_GET['year'])||$_GET['year']=="")?date("Y"):$_GET['year']; $month=(!isset($_GET['month'])||$_GET['

分享自定义的几个PHP功能函数_php实例

最近不是在折腾论坛嘛,各种类各种函数,原创一些,从别人那儿qiang过来一些,在此分享出来,希望有朋友能用的到~ 注意:部分函数可能不够完善,由此造成的漏洞风险自担~ 提交过滤 function filter($text) { //完全过滤注释 $text = preg_replace('/<!--?.*-->/', '', $text); //完全过滤js $text = preg_replace('/<script?.*\/script>/', '', $text); //过滤

php使用fsockopen函数发送post,get请求获取网页内容的方法_php技巧

本文实例讲述了php使用fsockopen函数发送post,get请求获取网页内容的方法.分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: $post =1; $url = parse_url($url); $host ='http://www.jb51.net'; $path ='/'; $query ='?action=phpfensi.com'; $port =80;   if($post) {   $out = "post $path http/1.0 ";  

PHP获取当前完整URL地址的函数_php技巧

这里主要是给大家分享一个非常实用的PHP函数,代码很简单,就不多废话了,小伙伴们需要的话直接拿去用. 复制代码 代码如下: //php获取当前访问的完整url地址 function get_current_url(){     $current_url='http://';     if(isset($_SERVER['HTTPS'])&&$_SERVER['HTTPS']=='on'){         $current_url='https://';     }     if($_SE

php使用get_class_methods()函数获取分类的方法_php技巧

本文实例讲述了php使用get_class_methods()函数获取分类的方法.分享给大家供大家参考,具体如下: <?php /* * Created on 2016-7-20 */ class Window //首先定义一个类 { var $state; //窗户的状态 function close_window() //关窗户方法 { $this->state="close"; //窗户的状态为关 } function open_window() //开窗户方法 {

php中实现获取随机数组列表的自定义函数_php技巧

贴一段代码,在php中获取随机数组 不用多说,直接贴代码,php中的array_rand很变态,突破了正常人的理解,繁琐 function create_random_ids( $min,$max,$limited ) { $_base_ids = range($min,$max); $_temp_key = array_rand ($_base_ids,min(count($_base_ids),$limited+10)); //拼接 $ids = array(); for ($x=0; $x

详解WordPress中用于更新和获取用户选项数据的PHP函数_php技巧

update_user_option()函数 update_user_option()函数作用利用全局博客权限更新用户选项. 用户选项类似于用户元数据,唯一的不同之处在于用户选项支持全局博客选项.如果'global'参数为False(默认情况下),update_user_option会预先将WordPress表前缀改成选项名称. [函数使用] <?php update_user_option( $user_id, $option_name, $newvalue, $global ) ?> [函

简介WordPress中用于获取首页和站点链接的PHP函数_php技巧

home_url()(获取首页链接)ome_url() 函数用来获取 WordPress 的首页链接. 用法 home_url( $path, $scheme ); 参数 $path (字符串)(可选)在首页链接后边追加的内容,是相对链接. 默认值:None $scheme (字符串)(可选)链接协议,只支持 "http","https" 和 "relative". 默认值:null 返回值 (字符串)返回首页 URL 加上 $path 参数.

php获取远程文件内容的函数_php技巧

一个简单的php获取远程文件内容的函数代码,兼容性强.直接调用就可以轻松获取远程文件的内容,使用这个函数也可获取图片.代码如下: /** * 读远程内容 * @return string */ function get_url_content($url){ if(function_exists("curl_init")){ $ch = curl_init(); $timeout = 30; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt