php根据生日计算年龄的方法
本文实例讲述了php根据生日计算年龄的方法。分享给大家供大家参考。具体如下:
<?php
function birthday($birthday){
$age = strtotime($birthday);
if($age === false){
return false;
}
list($y1,$m1,$d1) = explode("-",date("Y-m-d",$age));
$now = strtotime("now");
list($y2,$m2,$d2) = explode("-",date("Y-m-d",$now));
$age = $y2 - $y1;
if((int)($m2.$d2) < (int)($m1.$d1))
$age -= 1;
return $age;
}
echo birthday('1986-07-22');
?>
再来个简单点的,感觉没有上面的高大上
<?php
echo birthday("1989-01-25");
function birthday2($birthday){
list($year,$month,$day) = explode("-",$birthday);
$year_diff = date("Y") - $year;
$month_diff = date("m") - $month;
$day_diff = date("d") - $day;
if ($day_diff < 0 || $month_diff < 0)
$year_diff--;
return $year_diff;
}
希望本文所述对大家的php程序设计有所帮助。
相关推荐
-
php strlen mb_strlen计算中英文混排字符串长度
比较strlen和mb_strlen 当字符全是英文字符的时候,两者是一样.这里主要比较一下,中英文混排的时候,两个计算结果.(测试时编码方式是UTF8) 复制代码 代码如下: <?php $str='中文a字1符'; echo strlen($str); echo '<br />'; echo mb_strlen($str,'UTF8'); //输出结果 //14 //6 ?> 结果分析:在strlen计算时,对待一个UTF8的中文字符是3个长度,所以"中文a字1符&q
-
php计算两个日期相差天数的方法
本文实例讲述了php计算两个日期相差天数的方法.分享给大家供大家参考.具体实现方法如下: <?php /** * 求两个日期之间相差的天数 * (针对1970年1月1日之后,求之前可以采用泰勒公式) * @param string $day1 * @param string $day2 * @return number */ function diffBetweenTwoDays ($day1, $day2) { $second1 = strtotime($day1); $second2 = s
-
用php简单实现加减乘除计算器
用php实现加减乘除计算器.代码很简单哦! 复制代码 代码如下: <?php header("content-type:text/html;charset=utf-8"); session_start(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitiona
-
php 计算两个时间戳相隔的时间的函数(小时)
这个是可以具体到小时的php代码 复制代码 代码如下: /* Author: 杨宇 yangyu@sina.cn */ //输入两个时间戳,计算差值,也就是相差的小时数,如返回2:10,则表示输入的两个时间相差2小时10分钟 function hours_min($start_time,$end_time){ if (strtotime($start_time) > strtotime($end_time)) list($start_time, $end_time) = array($end_t
-
php学习之简单计算器实现代码
复制代码 代码如下: <html> <head> <title>PHP实现简单计算器</title> <meta http-equiv="Content-Type" content="text/html;charset=gb2312"> </head> <?php //单路分支 if(isset($_GET["sub"])) { $num1=true;//数字1是否为空
-
PHP中浮点数计算比较及取整不准确的解决方法
浮点数计算结果比较 一则浮点数计算例子如下: 复制代码 代码如下: $a = 0.2+0.7; $b = 0.9; var_dump($a == $b); 打印出的结果是:bool(false).也就是说在这里 0.2+0.7 的计算结果与 0.9 并不相等,这显然是有违我们的常识的. 对此问题,PHP官方手册曾又说明:显然简单的十进制分数如 0.2 不能在不丢失一点点精度的情况下转换为内部二进制的格式.这和一个事实有关,那就是不可能精确的用有限位数表达某些十进制分数.例如,十进制的 1/3 变
-
PHP基于方差和标准差计算学生成绩的稳定性示例
本文实例讲述了PHP基于方差和标准差计算学生成绩的稳定性.分享给大家供大家参考,具体如下: 项目中的学生端有处个人成长档案模块,要求依据学生近期十次考试成绩通过波动采集分析学生的成绩稳定性.学过数学都知道,这处应该利用数学中的方差来实现.由于是个数学渣,不得不网上看了下相关的说明和公式,见下图 好了,有了公式,那就好办了,接下来就是套公式了. $arr1 = array(50, 100, 100, 60, 50); $arr2 = array(73, 70, 75, 72, 70); funct
-
PHP计算百度地图两个GPS坐标之间距离的方法
本文实例讲述了PHP计算百度地图两个GPS坐标之间距离的方法.分享给大家供大家参考. 具体实现方法如下: 复制代码 代码如下: /** * 计算两个坐标之间的距离(米) * @param float $fP1Lat 起点(纬度) * @param float $fP1Lon 起点(经度) * @param float $fP2Lat 终点(纬度) * @param float $fP2Lon 终点(经度) * @return int */ function distanceBetw
-
php根据身份证号码计算年龄的实例代码
复制代码 代码如下: <?php function getAgeByID($id){ //过了这年的生日才算多了1周岁 if(empty($id)) return ''; $date=strtotime(substr($id,6,8)); //获得出生年月日的时间戳 $today=strtotime('today'); //获得今日的时间戳 $diff=floor(($today-$date)/86400/365);
-
php计算两个坐标(经度,纬度)之间距离的方法
本文实例讲述了php计算两个坐标(经度,纬度)之间距离的方法.分享给大家供大家参考.具体如下: 这里使用php计算两个坐标(经度,纬度)之间的距离,返回结果为米或者千米 function distance($lat1, $lng1, $lat2, $lng2, $miles = true) { $pi80 = M_PI / 180; $lat1 *= $pi80; $lng1 *= $pi80; $lat2 *= $pi80; $lng2 *= $pi80; $r = 6372.797; //
-
php计算多维数组中所有值总和的方法
本文实例讲述了php计算多维数组中所有值总和的方法.分享给大家供大家参考.具体实现方法如下: php 内置函数 array_sum() 函数返回数组中所有值的总和,只能返回一维数组的总和: 计算多维数组所有值的和就要自定义函数了: function get_sum($array) { $num = 0; foreach($array as $k => $v) { if(is_array($v)) { $num += get_sum($v); } } return $num + array_sum
-
php计算程序运行时间的简单例子分享
首先我们分析一下原理,要想得到程序运行时间,那么可以在程序最开始运行的时候定义一个变量记下当前时间,然后等我们程序运行完之后再记录一下当前的时间,两者相差就是该程序运行花费的时间了. 这里介绍一下 microtime() 这个函数,microtime() 用的不多,但是不能不知道这个函数,它是返回当前 Unix 时间戳和微秒数.例如:echo microtime(); 会返回:0.08845800 1376983061.所以可以用explode函数将它以空格为标识分割成一个数组,那么此时的$st
随机推荐
- 如何快速学习正则表达式
- 在InstallShield中通过主机名获取IP地址的代码
- Python使用time模块实现指定时间触发器示例
- 在Python中移动目录结构的方法
- javascript中onclick(this)用法介绍
- HTML5开发Kinect体感游戏的实例应用
- asp.net线程批量导入数据时通过ajax获取执行状态
- Ajax Throws Sys.WebForms.PageRequestManagerErrorException with Response.Redirect的解决方法
- C#常用的命名规则汇总
- 在Django中创建第一个静态视图
- vbs 脚本错误:操作中文件名或类名未找到的解决方法
- jquery网页日历显示控件calendar3.1使用详解
- Javascript学习笔记之数组的构造函数
- iis6.0 应用程序不可用的解决方法
- Java互斥锁简单实例
- Java中线程死亡的几种情况实例分析
- WeakReference(弱引用)让GC需要时回收对象
- c#对字符串操作的技巧小结
- ASP中生成文本文件的两种方式
- 小米正式开源 SQL 智能优化与改写工具 SOAR
