ホームページ  >  記事  >  バックエンド開発  >  PHP で年齢とドメイン名の年齢を計算するにはどうすればよいですか? YYYY-mm-dd は既知です。ドメイン名の年齢を調べる

PHP で年齢とドメイン名の年齢を計算するにはどうすればよいですか? YYYY-mm-dd は既知です。ドメイン名の年齢を調べる

WBOY
WBOYオリジナル
2016-06-13 13:01:161067ブラウズ

PHP はどのようにして年齢やドメインの年齢を計算しますか? YYYY-mm-dd は既知です。ドメイン名の古さを調べます。
ドメイン名の年齢を計算する方法がずっと気になっていて、自分で関数を書いたのですが、一部の年が閏年なので間違っていました。

<br />
<?php <br />
<br />
<br />
//时间输入必须单位<br />
function mathAge($ymd2){<br />
    $ymd1 = "2012-2-27";<br />
    @list($y1,$m1,$d1) = explode("-",date("Y-m-d", strtotime($ymd1)));<br />
    @list($y2,$m2,$d2) = explode("-",date("Y-m-d", strtotime($ymd2)));<br />
    <br />
    $arr = array(<br />
    "年" =>  round( $y1-$y2 ),<br />
    "月" =>  round( $m1-$m2 ),<br />
    "天" =>  round( $d1-$d2 ),<br />
    );<br />
<br />
    $arr["天"] = round($d1-$d2);<br />
    while ($arr["天"] < 0) {<br />
        $arr["天"] += 30;<br />
        $arr["月"] -= 1;<br />
    }<br />
    <br />
    while ($arr["月"] < 0) {<br />
    	$arr["月"] += 12;<br />
    	$arr["年"] -= 1;<br />
    }<br />
    $txt = '';<br />
    foreach ($arr as $k => $v)<br />
    {<br />
        if(!$v)  continue;<br />
        $txt .= $v.$k;<br />
    }<br />
    echo "$ymd1 - $ymd2 = $txt \n";<br />
    return $txt;<br />
  }<br />
<br />
  $dateArr = array(<br />
  "2011-12-28",<br />
  "2011-12-29",<br />
  "2011-12-27",<br />
  <br />
  "2010-12-28",<br />
  "2010-12-29",<br />
  "2010-12-27",<br />
  <br />
  "2011-10-1",<br />
  "2010-5-1",<br />
  "2010-2-28",<br />
  <br />
  "1995-1-1",<br />
  "1995-12-31",<br />
  );<br />
  foreach ($dateArr as $date)<br />
  {<br />
      mathAge($date);<br />
      <br />
  }<br />
?><br />
<br />


上記の出力テストの内容は次のとおりです:


2012-2-27 - 2011-12-28 = 1月29天 <br />
2012-2-27 - 2011-12-29 = 1月28天 <br />
2012-2-27 - 2011-12-27 = 2月 <br />
2012-2-27 - 2010-12-28 = 1年1月29天 <br />
2012-2-27 - 2010-12-29 = 1年1月28天 <br />
2012-2-27 - 2010-12-27 = 1年2月 <br />
2012-2-27 - 2011-10-1 = 4月26天 <br />
2012-2-27 - 2010-5-1 = 1年9月26天 <br />
2012-2-27 - 2010-2-28 = 1年11月29天 <br />
2012-2-27 - 1995-1-1 = 17年1月26天 <br />
2012-2-27 - 1995-12-31 = 16年1月26天 

2 つの日付間の年月の差を計算するにはどうすればよいですか?閏年の 2 月を考えてみましょう。
-----解決策---------
わかりました、よくわかりませんが、私は特にオリジナルの投稿者に感謝の意を表するためにここに来ました

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。