2014-09-02 99 views
-1

我有一個計算從給定日期有沒有基於年齡數據計算日期的方法?

public function showAge() 
    { 
     if ($this->account_id == 1 && !empty($this->profile->birthday)) 
     { 
      return date_diff(date_create($this->profile->birthday), date_create('today'))->y; 
     } 
    } 

我的問題是年齡的關係:我可以做一些一種逆向功能(由給定的年齡計算日期)的?

+0

的可能重複[如何計算使用PHP的兩個日期之間的區別嗎?] (http://stackoverflow.com/questions/676824/how-to-calculate-the-difference-between-two-dates-using-php) – 2014-09-02 16:18:44

+0

除非這肯定是用戶的生日,否則無法計算確切日期從現在的日期開始......假設我的生日是八月二十八日,而我是二十六歲,那麼你可以得到我的生日,但是如果我不提供你我的出生日期/月份,你只能得到我的出生年。 – 2014-09-02 16:19:39

+0

不可能的重複,因爲我不需要2日期之間的差異,我需要基於年齡的日期 – 2014-09-02 16:20:28

回答

2

日期=>年齡是多對一的映射,因爲在我365歲的每一天,我22歲......我22歲。

但是,只知道我22歲並不能讓你推斷日期。

一個類似的問題是「知道4 + 6 = 10,你能從10得到4和6嗎?」答案是否定的,因爲5 + 5也是10.這樣,整數的加法也是多對一的映射。

它們不能顛倒。這就是說,如果你知道他們的出生日期,那麼你可以簡單地將年齡添加到出生年份並獲得他們最近的生日的日期。

1
<?php 
$age = 26; 
echo date('Y') - $age; 

這是你能得到,除非當天最好是幸運的一天/用戶的出生月份...