aboutsummaryrefslogtreecommitdiff
path: root/fn/fn.php
diff options
context:
space:
mode:
Diffstat (limited to 'fn/fn.php')
-rw-r--r--fn/fn.php22
1 files changed, 22 insertions, 0 deletions
diff --git a/fn/fn.php b/fn/fn.php
index 65d14f4..ce9bdae 100644
--- a/fn/fn.php
+++ b/fn/fn.php
@@ -77,5 +77,27 @@ function readablesize(int $bytes)
return sprintf($format, $num, $unit);
}
+
+/* human readable date interval
+ * @param DateInterval $diff - l'interval de temps
+ * @return string
+ */
+function hrdi(DateInterval $diff)
+{
+ $str = "";
+ if ($diff->y > 1) return $str . $diff->y . ' ans';
+ if ($diff->y == 1) return $str . ' 1 an et ' . $diff->m . ' mois';
+ if ($diff->m > 1) return $str . $diff->m . ' mois';
+ if ($diff->m == 1) return $str . ' 1 mois et ' . $diff->d . ($diff->d > 1 ? ' jours' : ' jour');
+ if ($diff->d > 1) return $str . $diff->d . ' jours';
+ if ($diff->d == 1) return $str . ' 1 jour et ' . $diff->h . ($diff->h > 1 ? ' heures' : ' heure');
+ if ($diff->h > 1) return $str . $diff->h . ' heures';
+ if ($diff->h == 1) return $str . ' 1 heure et ' . $diff->i . ($diff->i > 1 ? ' minutes' : ' minute');
+ if ($diff->i > 1) return $str . $diff->i . ' minutes';
+ if ($diff->i == 1) return $str . ' 1 minute';
+ return $str . ' quelques secondes';
+}
+
+
?>