PHP 年龄计算函数(精确到天)

复制代码 代码如下:

  <?php

  /**

  * PHP 年龄计算函数

  *

  * 参数支持数组传参和标准的 Mysql date 类型传参

  * params sample

  * --------------------------------------------------

  $birthArr = array(

  'year' => '2000',

  'month' => '11',

  'day' => '3'

  );

  $birthStr = '2000-11-03';

  * --------------------------------------------------

  * );

  * @author IT不倒翁 <[email protected]>

  * @copyright (c) 2011,2012 Just Use It!

  * @link IT不倒翁 http://yungbo.com

  * @param string|array $birthday

  * @return number $age

  */

  function getAge($birthday) {

  $age = 0;

  $year = $month = $day = 0;

  if (is_array($birthday)) {

  extract($birthday);

  } else {

  if (strpos($birthday, '-') !== false) {

  list($year, $month, $day) = explode('-', $birthday);

  $day = substr($day, 0, 2); //get the first two chars in case of '2000-11-03 12:12:00'

  }

  }

  $age = date('Y') - $year;

  if (date('m') < $month || (date('m') == $month && date('d') < $day)) $age--;

  return $age;

  }