Home  >  Article  >  Backend Development  >  PHP introductory training tutorial time processing in php

PHP introductory training tutorial time processing in php

巴扎黑
巴扎黑Original
2016-11-07 17:06:411619browse

Time processing in php

PHP introductory training tutorial Brothers PHP training

Time processing in php compiled by the editor:

 <? 
  /** 
  * 转换为UNIX时间戳 
  */ 
  function gettime($d) { 
  if(is_numeric($d)) 
  return $d; 
  else { 
  if(! is_string($d)) return0; 
  if(ereg(":",$d)){ 
  $buf = split("+",$d); 
  $year =split("[-/]",$buf[0]); 
  $hour =split(":",$buf[1]); 
  if(eregi("pm",$buf[2])) 
  $hour[0] += 12; 
  returnmktime($hour[0],$hour[1],$hour[2],$year[1],$year[2],$year[0]); 
  }else { 
  $year =split("[-/]",$d); 
  return mktime(0,0,0,$year[1],$year[2],$year[0]); 
  } 
  } 
  } 
  /** 
  * 
  *DateAdd(interval,number,date) 
  * 返回已添加指定时间间隔的日期。 
  * Inetrval为表示要添加的时间间隔字符串表达式,例如分或天 
  * number为表示要添加的时间间隔的个数的数值表达式 
  * Date表示日期 
  * 
  * Interval(时间间隔字符串表达式)可以是以下任意值: 
  * yyyy year年 
  * q Quarter季度 
  * m Month月 
  * y Day of year一年的数 
  * d Day天 
  * w Weekday一周的天数 
  * ww Week of year周 
  * h Hour小时 
  * n Minute分 
  * s Second秒 
  * w、y和d的作用是完全一样的,即在目前的日期上加一天,q加3个月,ww加7天。 
  */ 
  function DateAdd($interval,$number, $date) { 
  $date = gettime($date); 
  $date_time_array =getdate($date); 
  $hours =$date_time_array["hours"]; 
  $minutes =$date_time_array["minutes"]; 
  $seconds =$date_time_array["seconds"]; 
  $month =$date_time_array["mon"]; 
  $day =$date_time_array["mday"]; 
  $year =$date_time_array["year"]; 
  switch ($interval) { 
  case "yyyy":$year +=$number; break; 
  case "q": $month+=($number*3); break; 
  case "m": $month+=$number; break; 
  case "y": 
  case "d": 
  case "w":$day+=$number; break; 
  case "ww":$day+=($number*7); break; 
  case "h": $hours+=$number;break; 
  case "n":$minutes+=$number; break; 
  case "s":$seconds+=$number; break; 
  } 
  $timestamp = mktime($hours,$minutes, $seconds,$month ,$day, $year); 
  return $timestamp; 
  } 
  /** 
  *DateDiff(interval,date1,date2) 
  * 返回两个日期之间的时间间隔 
  * intervals(时间间隔字符串表达式)可以是以下任意值: 
  * w 周 
  * d 天 
  * h 小时 
  * n 分钟 
  * s 秒 
  */ 
  function DateDiff($interval, $date1,$date2) { 
  // 得到两日期之间间隔的秒数 
  $timedifference =gettime($date2) - gettime($date1); 
  switch ($interval) { 
  case "w": $retval= bcp($timedifference ,604800); break; 
  case "d": $retval= bcp( $timedifference,86400); break; 
  case "h": $retval= bcp ($timedifference,3600); break; 
  case "n": $retval= bcp( $timedifference,60); break; 
  case "s": $retval= $timedifference; break; 
  } 
  return $retval; 
  } 
  ?> 
  <? 
  // 测试例 
  $d1 ="2002-01-11"; 
  $d2 =date("Y-m-d",dateadd("d",15,$d1)); 
  echo $d1."的". datediff("d",$d1,$d2)."天后是$d2
"; 
  echo $d1."的10天前是".date("Y-m-d",dateadd("d",-10,$d1))."
"; 
  $d3 = date("Y/m/d H:i:s"); 
  echo "现在是".$d3."距离2002/2/12 12:59:59还有".datediff("s",$d3,"2002/2/1212:59:59")."秒
"; 
  ?>

The above is the content of time processing in php introductory training tutorial for PHP, more related content Please pay attention to the PHP Chinese website (www.php.cn)!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn