宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应
您当前的位置: > 博客2 > AS2与AS3技术

[php]php处理1970年前的日期方法源代码实例

2016-10-13 00:16:48 点击量:6 标签: 收藏本文

我在处理一篇会员注册页面时,客户要求日期从1960年开始,这样就会产生以下问题:

Warning : date() [function.date ]: Windows does not support dates prior to midnight (00:00:00), January 1, 1970 in c:/program files/wamp/www/friends/admin/users_manager.php on line 320

Warning : date() [function.date ]: Windows does not support dates prior to midnight (00:00:00), January 1, 1970 in c:/program files/wamp/www/friends/admin/users_manager.php on line 321

Warning : date() [function.date ]: Windows does not support dates prior to midnight (00:00:00), January 1, 1970 in c:/program files/wamp/www/friends/admin/users_manager.php on line 322

在网上搜了半天,没找到合适的办法,于是千思万想,想到了以下的办法,解决了这个问题:

  1. $sql_query="select * from members where mem_id='$mem_id'";   
  2.             $mem=sql_execute($sql_query,'get');   
  3.                
  4.             //first check birthday if it is prior to 1970   
  5.             if($mem->birthday<0)   
  6.             {   
  7.                 //先加10年,有两个闰年,帮日加2.   
  8.                 $d=date("d",10*365*24*60*60+$mem->birthday)+2;   
  9.                 $m=date("m",10*365*24*60*60+$mem->birthday);   
  10.                 $y=date("y",10*365*24*60*60+$mem->birthday)-10;   
  11.             }   
  12.             else   
  13.             {   
  14.                 $d=date("d",$mem->birthday);   
  15.                 $m=date("m",$mem->birthday);   
  16.                 $y=date("Y",$mem->birthday);   
  17.             }   

 

ABOUT US
宜昌农人网络科技有限公司

我们是一家提供综合软件外包与弱电工程服务的技术公司。

业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。

公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室