2014-01-24 131 views
-2

我有age = 39month = 10day = 5,我需要得到出生年份如何在php中獲得年齡,月份和日期?

年需要採取在考慮agemonthday

什麼想法?

+0

年齡是幾年?你可以從當前的日期(「Y」)中減去那個年份嗎?/ –

+0

年齡就像'39' – Patrioticcow

+1

使用GOOGLE,搜索關於'date()'和'strtotime()' –

回答

1

你可以試試這個:

<?php 
    $age = 21; 
    $birthmonth = 8; 
    $birthday = 26; 
    $thisyear = date('Y', time()); 
    $checkdate = "$thisyear-$birthmonth-$birthday"; 
    if((time()-strtotime($checkdate)) > 0){ 
     $birthyear = $thisyear - $age; 
    } else { 
     $birthyear = $thisyear - $age - 1; 
    } 
    $fullstring = "$birthyear-$birthmonth-$birthday"; 
    $fullstring = date('m/d/Y', strtotime($fullstring)); 
    echo $fullstring; 
?> 

這是一個有點笨拙,但它會工作。它會檢查他們的生日是否已經發生並計算出來。

+0

這似乎工作。生病選擇這個答案,因爲我實際上可以用不同的數字進行測試。謝謝大家 – Patrioticcow

0

我剛剛創建了一個小例子,我的出生日期和它的作品,希望這是你在找什麼

$age = 34 ; 
$mon = 01; 
$day = 29 ; 

$beck_year = date("Y",strtotime("- $age years")); 

$dob = $beck_year.'-'.$mon.'-'.$day ; 
+0

你知道'strtotime'會考慮今天嗎?月和日? – Patrioticcow

+0

這個想法是從當前日期開始計算年份,然後在該年份中添加月份,日期。 –

0

擴展在修正我的意見有缺陷的邏輯......

if($month >= date("m") && $day >= date("d") 
    $year = date("Y") - $age; 
else 
    $year = $date("Y") - $age - 1; 
0

檢查這一項,希望這將有助於!

$years = 10; 
$months = 1; 
$days = 1; 

function get_byear($years,$months,$days){ 
    $b_year = date('Y', strtotime("$years years $months months $days days ago")); 
    return $b_year; 
} 

echo get_byear($years,$months,$days); 
相關問題