백엔드 개발 PHP 튜토리얼 原创处理时间的类,请大家指正_PHP

原创处理时间的类,请大家指正_PHP

Jun 01, 2016 pm 12:35 PM
time 원래의 다루다 시간

timer.class.php

//###################### Start Introduce #######################################
// author: bluemaple ; email: bluemaple@x263.net
// 最后修改时间2002-1-28 1:35
// 此函数求解决返回时间显示格式问题。包括date()函数的所有格式,默认的$type为最常用的类型
// 除了$year,$month,$day,$hour,$minute,$second;添加了$week(周),$zone(一年中的第几天),$numMonth(当前月份的天数)
// 其中默认的都为最常用的格式
// 特点,在时间处理中用得最多的是mktime,这里设置mktime可以按照习惯输入(年,月,日)显示
// mktimeY();mktimeW();mktimeM();mktimeD();可以方便设置一个时间相隔y年,n月,在mysql检索中方便使用
// subTime();函数可以方便求得两个时间相差的天数,周等
//####################### End Introduce ########################################

class TIMER{
  var $year;   // 年
  var $month;  // 月
  var $day;    // 日
  var $hour;   // 时
  var $minute; // 分
  var $second; // 秒
  var $week;   // 周
  var $zone;   // 一年中的第几天
  var $numMonth; // 当前月份的天数
  var $mktime;  // mktime
     
  function year($time="",$type=0){ // 返回年
                                   // $type=0表示返回四位的年份
                                   // $type=1表示返回二位的年份
      if($time=="") $time=time();
      if($type==0) $this->year=date("Y",$time);
      if($type==1) $this->year=date("y",$time);
      return $this->year;
       }    
      
  function month($time="",$type=0){ // 返回月
                                    // $type=0表示返回1~12
                                    // $type=1表示返回01~12
                                    // $type=2表示返回jan..三个英文字母
                                    // $type=3表示返回英语全名
      if($time=="") $time=time();
      if($type==0) $this->month=date("n",$time);
      if($type==1) $this->month=date("m",$time);
      if($type==2) $this->month=date("M",$time);
      if($type==3) $this->month=date("F",$time);
      return $this->month;
      }   
      
  function day($time="",$type=0){ // 返回日
                                  // $type=0返回1~31
                                  // $type=1返回01~31
      if($time=="") $time=time();
      if($type==0) $this->day=date("j",$time);
      if($type==1) $this->day=date("d",$time);
      return $this->day;
      }    

  function hour($time="",$type=0){ // 返回时
                                   // $type=0返回1~24
                                   // $type=1返回1~12
                                   // $type=2返回01~24
                                   // $type=3返回01~12
      if($time=="") $time=time();
      if($type==0) $this->hour=date("H",$time);
      if($type==1) $this->hour=date("h",$time);
      if($type==2) $this->hour=date("G",$time);
      if($type==3) $this->hour=date("g",$time);
      return $this->hour;
      }    
      
  function minute($time="",$type=0){ // 返回分
      if($time=="") $time=time();
      if($type==0) $this->minute=date("i",$time);
      return $this->minute;
    }
   
  function second($time="",$type=0){ // 返回秒
                                     // $type=0 返回1~59
                                     // $type=1 返回字尾加英文序数,二个英文字母
      if($time=="") $time=time();
      if($type==0) $this->second=date("s",$time);
      if($type==1) $this->second=date("S",$time);
      return $this->second;
      }
  
  function week($time="",$type=0){ // 返回周
                                   // $type=0 返回0~6
                                   // $type=1 返回三个字母的周
                                   // $type=2 返回全字母的周
      if($time=="") $time=time();
      if($type==0) $this->week=date("w",$time);
      if($type==1) $this->week=date("D",$time);
      if($type==2) $this->week=date("l",$time);
      return $this->week;
      }
  
  function zone($time=""){ // 一年中的第几天;
        if($time=="") $time=time();
      $this->zone=date("z",$time);
      return $this->zone;
      }
  
  function numMonth($time=""){ // 当前月的天数
      if($time=="") $time=time();
      $this->numMonth=date("t",$time);
      return $this->numMonth;
      }

  function time($time=""){ //取得所有关于当前时间的参数。
      if($time=="") $time=time();
      $this->year($time);
      $this->month($time);
      $this->day($time);
      $this->hour($time);
      $this->minute($time);
      $this->second($time);
      $this->week($time);
      $this->zone($time);
      $this->numMonth($time);
      }  
   
  function mktime($year=0,$month=0,$day=0,$hour=0,$minute=0,$second=0){ // 年月日时分秒
      $this->mktime=mktime($hour,$minute,$second,$month,$day, $year);
      return $this->mktime;
      }
  
  function mktimeY($time="",$y=1){ // 取得某一时间y年以前的,默认为1
      $this->time($time);
      $this->mktime=mktime(0,0,0,$this->month,$this->day,($this->year-$y));
      return $this->mktime;
      }
  
  function mktimeM($time="",$m=1){ // 取得某一时间m月以前的,默认为1
      $this->time($time);
      $this->mktime=mktime(0,0,0,$this->month-$m,$this->day,$this->year);
      return $this->mktime;
      }
  
  function mktimeD($time="",$d=1){ // 取得某一时间d天以前的,默认为1天
      $this->time($time);
      $this->mktime=mktime(0,0,0,$this->month,$this->day-$d,$this->year);
      return $this->mktime;
      }
  
  function mktimeW($time="",$w=1){ // 取得某一时间w个周以前的,默认为1周
      $this->time($time);
      $this->mktime=mktime(0,0,0,$this->month,$this->day-7*$w,$this->year);
      return $this->mktime;
      }

  function subTime($aTime="",$bTime=""){ // 两个时间之差,后者减去前者
      if($aTime=="") $aTime = time();
      if($bTime=="") $bTime = time();
      $subTime = $bTime - $aTime;
      $this->second=intval($subTime);
      $this->minute=intval($subTime/60);
      $this->hour=intval($this->minute/60);
      $this->day=intval($this->hour/24);
      $this->week=intval($this->day/7);
      $this->month=intval($this->day/30);
      $this->year=intval($this->monday/12);
      }
}
?>
测试text.php

require("./timer.class.php");
//###################################
echo "
___________________________________
";
$TIMER=new TIMER;
$d=$TIMER->mktimeW();
$TIMER->subTime($d);
echo "second";echo $TIMER->second;echo "
";
echo "minute";echo $TIMER->minute;echo "
";
echo "hour";echo $TIMER->hour;echo "
";
echo "day";echo $TIMER->day;echo "
";
echo "week";echo $TIMER->week;echo "
";
echo "month";echo $TIMER->month;echo "
";
echo "year";echo $TIMER->year;echo "
";
echo "
___________________________________
";
?>

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

CPU를 너무 많이 점유하는 WIN10 서비스 호스트의 동작 과정 CPU를 너무 많이 점유하는 WIN10 서비스 호스트의 동작 과정 Mar 27, 2024 pm 02:41 PM

1. 먼저 작업 표시줄의 빈 공간을 마우스 오른쪽 버튼으로 클릭하고 [작업 관리자] 옵션을 선택하거나, 시작 로고를 마우스 오른쪽 버튼으로 클릭한 후 [작업 관리자] 옵션을 선택합니다. 2. 열린 작업 관리자 인터페이스에서 맨 오른쪽에 있는 [서비스] 탭을 클릭합니다. 3. 열린 [서비스] 탭에서 아래의 [서비스 열기] 옵션을 클릭하세요. 4. 열리는 [서비스] 창에서 [InternetConnectionSharing(ICS)] 서비스를 마우스 오른쪽 버튼으로 클릭한 후 [속성] 옵션을 선택하세요. 5. 열리는 속성 창에서 [연결 프로그램]을 [사용 안 함]으로 변경하고 [적용]을 클릭한 후 [확인]을 클릭하세요. 6. 시작 로고를 클릭한 후 종료 버튼을 클릭하고 [다시 시작]을 선택한 후 컴퓨터를 다시 시작합니다.

Douyin 레벨 10 조명 표지판의 가격은 얼마입니까? 레벨 10 팬사인회 제작에는 며칠이 소요되나요? Douyin 레벨 10 조명 표지판의 가격은 얼마입니까? 레벨 10 팬사인회 제작에는 며칠이 소요되나요? Mar 11, 2024 pm 05:37 PM

Douyin 플랫폼에서는 많은 사용자가 레벨 인증을 받기를 열망하고 있으며 레벨 10 표시등은 Douyin에 대한 사용자의 영향력과 인식을 보여줍니다. 이 기사에서는 사용자가 프로세스를 더 잘 이해할 수 있도록 Douyin의 레벨 10 라이트 보드 가격과 이 레벨에 도달하는 데 걸리는 시간을 자세히 살펴보겠습니다. 1. 레벨 10 Douyin 라이트 사인의 가격은 얼마입니까? Douyin의 10단계 전광판 가격은 시장 변동과 수요 공급에 따라 달라질 수 있으며, 일반적인 가격은 수천 위안에서 만 위안까지 다양합니다. 이 가격에는 주로 조명 사인 자체 비용과 가능한 서비스 수수료가 포함됩니다. 사용자는 Douyin의 공식 채널이나 제3자 서비스 대행사를 통해 레벨 10 조명 간판을 구매할 수 있지만, 허위 또는 사기 거래를 피하기 위해 구매 시 법적 채널에 주의해야 합니다. 2. 레벨 10 팬사인을 만드는데 며칠이 걸리나요? 레벨 10 신호등에 도달하세요

엘든 링을 클리어하는 데 얼마나 걸리나요? 엘든 링을 클리어하는 데 얼마나 걸리나요? Mar 11, 2024 pm 12:50 PM

플레이어는 Elden's Circle에서 플레이할 때 게임의 주요 줄거리를 경험하고 게임 성과를 수집할 수 있습니다. 많은 플레이어는 Elden's Circle을 클리어하는 데 시간이 얼마나 걸리는지 모릅니다. 엘든 링을 클리어하는데 얼마나 걸리나요? 답변: 30시간. 1. 이 30시간 통관시간은 마스터급 스피드패스를 의미하지는 않지만, 많은 과정을 생략하기도 합니다. 2. 더 나은 게임 경험을 원하거나 전체 줄거리를 경험하고 싶다면 반드시 지속 시간에 더 많은 시간을 할애해야 합니다. 3. 모두 모으는 데에는 약 100~120시간 정도 소요됩니다. 4. 본선만 타고 BOSS 브러싱을 하면 50~60시간 정도 소요됩니다. 5. 모든 것을 경험하고 싶다면: 기본 시간 150시간.

Xiaohongshu에 작품 출판 시간을 설정하는 방법은 무엇입니까? 작품 출판 시기는 정확합니까? Xiaohongshu에 작품 출판 시간을 설정하는 방법은 무엇입니까? 작품 출판 시기는 정확합니까? Mar 24, 2024 pm 01:31 PM

생활과 지식 공유가 가득한 플랫폼 샤오홍슈를 통해 점점 더 많은 창작자들이 자유롭게 자신의 의견을 표현할 수 있게 되었습니다. Xiaohongshu에 대한 관심과 좋아요를 더 많이 얻으려면 콘텐츠의 질뿐만 아니라 작품을 출판하는 시기도 중요합니다. 그렇다면 Xiaohongshu의 작품 출판 시간은 어떻게 설정합니까? 1. 소홍서 작품 출판 시기는 어떻게 정하나요? 1. 사용자의 활동시간을 이해한다. 먼저 Xiaohongshu 사용자의 활동시간을 명확히 할 필요가 있다. 일반적으로 오후 8시부터 10시까지와 주말 오후는 사용자 활동이 많은 시간입니다. 그러나 이 기간은 잠재고객 세그먼트 및 지역과 같은 요인에 따라 달라질 수도 있습니다. 따라서 사용자의 활동 기간을 더 잘 파악하기 위해서는 그룹별 행동 습관에 대한 보다 자세한 분석을 수행하는 것이 좋습니다. 사용자의 삶을 이해함으로써

Linux 파일 시간 보기 기술에 대한 자세한 설명 Linux 파일 시간 보기 기술에 대한 자세한 설명 Feb 21, 2024 pm 01:15 PM

Linux 파일 시간 보기 기술에 대한 자세한 설명 Linux 시스템에서 파일 시간 정보는 파일 관리 및 변경 사항 추적에 매우 중요합니다. Linux 시스템은 액세스 시간(atime), 수정 시간(mtime), 변경 시간(ctime)이라는 세 가지 주요 시간 속성을 통해 파일 변경 정보를 기록합니다. 이 문서에서는 이 파일 시간 정보를 보고 관리하는 방법을 자세히 설명하고 특정 코드 예제를 제공합니다. 1. ls 명령과 -l 매개변수를 함께 사용하여 파일 목록을 확인하여 파일 시간 정보를 확인합니다.

PHP에서 특수 문자를 처리하고 작은따옴표를 변환하는 방법을 알아보세요. PHP에서 특수 문자를 처리하고 작은따옴표를 변환하는 방법을 알아보세요. Mar 27, 2024 pm 12:39 PM

PHP 개발 과정에서 특수 문자를 처리하는 것은 일반적인 문제이며, 특히 문자열 처리에서는 특수 문자가 이스케이프되는 경우가 많습니다. 그중에서도 특수 문자를 작은따옴표로 변환하는 것은 상대적으로 일반적인 요구 사항입니다. 왜냐하면 PHP에서는 작은따옴표가 문자열을 래핑하는 일반적인 방법이기 때문입니다. 이 기사에서는 PHP에서 특수 문자 변환 작은따옴표를 처리하는 방법을 설명하고 구체적인 코드 예제를 제공합니다. PHP에서 특수 문자에는 작은따옴표('), 큰따옴표("), 백슬래시() 등이 포함되지만 이에 국한되지는 않습니다.

gshock 시계에서 시간을 조정하는 방법 gshock 시계에서 시간을 조정하는 방법 Feb 21, 2024 pm 09:04 PM

많은 사용자들이 gshock 시계의 시간 조정 방법을 잘 모릅니다. 전체적인 방법은 비교적 간단합니다. gshock 시계의 조정 방법에 대한 자세한 소개는 다음과 같습니다. gshock 시계의 시간을 조정하는 방법 1. 먼저 ABCD에 따라 이 버튼에 라벨을 붙입니다. A 키: 일반적으로 C 키와 함께 사용되는 종료 키로 이해될 수 있습니다. B 키와 D 키는 조정 키인 플러스 및 마이너스 키로 이해될 수 있습니다. 예를 들어 지금이 13시라면 14시에 도달하면 D 키를 누릅니다. C 키는 모드 키입니다. 일반적으로 시계의 모드 키는 왼쪽 하단에 있으며 영어로 "mode"라는 단어가 있습니다. 작동 방법 1. 먼저 시계를 원하는 상태로 조정해야 합니다.

Ark of Destiny Dreams는 언제 출시되나요? Ark of Destiny Dreams는 언제 출시되나요? Mar 14, 2024 pm 03:00 PM

많은 플레이어들이 슬리피드림의 방주가 3월 13일에 출시될지 궁금해하고 있습니다. 또한 새로운 프로 파이터 지아난, 신의 선택을 받은 영웅 무기, 새로운 BOSS 및 기타 구체적인 콘텐츠도 있을 예정입니다. 세부정보 Ark of Destiny Sleepy Dreams 출시 시기에 대한 소개 내용을 살펴보겠습니다. Ark of Destiny 가이드: Ark of Destiny Dreams는 언제 출시되나요? 답변: 3월 13일. 아이템 레벨 요구 사항: 1레벨~3레벨 요구 사항: 1540. 레벨 4 도달 요구 사항: 1560. 드롭된 아이템: Dream 생각, 드림마크, 절망에 빠진다. 새로운 프로 파이터 남성 1. 특성: 슈라 에너지, 슈라 에너지를 축적하여 [복싱 챔피언 자격]에 진입 2. 전문 특성: 근접 직업 3. 전문 무기: 중팔 갑옷. 신대륙 로완 1. 개봉방법

See all articles