1. カスタム関数 (非常にスマート)
// 2 つの時点の差を返し、非常に使いやすい方法で表示します
// この関数には 2 つのパラメーターがあります。最初のパラメータは開始時刻を指し、デフォルト値は 1 です。2 番目のパラメータは現在 (または終了) 時刻で、デフォルトは time()<span style="font-size:18px;">function timespan($seconds = 1, $time = '') { if ( ! is_numeric($seconds)) { $seconds = 1; } if ( ! is_numeric($time)) { $time = time(); } if ($time <= $seconds) { $seconds = 1; } else { $seconds = $time - $seconds; } $str = ''; $years = floor($seconds / 31536000); if ($years > 0) { $str .= $years.' 年, '; } $seconds -= $years * 31536000; $months = floor($seconds / 2628000); if ($years > 0 OR $months > 0) { if ($months > 0) { $str .= $months.' 月, '; } $seconds -= $months * 2628000; } $weeks = floor($seconds / 604800); if ($years > 0 OR $months > 0 OR $weeks > 0) { if ($weeks > 0) { $str .= $weeks.' 周, '; } $seconds -= $weeks * 604800; } $days = floor($seconds / 86400); if ($months > 0 OR $weeks > 0 OR $days > 0) { if ($days > 0) { $str .= $days.' 天, '; } $seconds -= $days * 86400; } $hours = floor($seconds / 3600); if ($days > 0 OR $hours > 0) { if ($hours > 0) { $str .= $hours.' 小时, '; } $seconds -= $hours * 3600; } $minutes = floor($seconds / 60); if ($days > 0 OR $hours > 0 OR $minutes > 0) { if ($minutes > 0) { $str .= $minutes.' 分钟, '; } $seconds -= $minutes * 60; } if ($str == '') { $str .= $seconds.' 秒, '; } return substr(trim($str), 0, -1); }</span>
2 です。
は、次のように tp フレームワークのテンプレートで使用されます。 上記は、PHP によって返される 2 つの時点の違いを人間的な側面も含めて非常にわかりやすく表示しています。PHP チュートリアルに興味のある友人の役に立つことを願っています。