PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 7.1.4
Admin Columns v7.1.4
7.1.4 7.0.19 2.3.5 2.4 2.4.1 2.4.10 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.4.8 2.4.9 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.6.1 2.5.6.2 2.5.6.3 2.5.6.4 3.0 3.0.1 3.0.2 3.0.3 3.0.5 3.0.7 3.1 3.1.1 3.1.10 3.1.2 3.1.3 3.1.5 3.2.3 3.2.7 3.3.1 3.4.1 3.4.6 3.4.8 4.0.1 4.0.3 4.1.6 4.2.2 4.2.5 4.3 4.3.2 4.4.1 4.4.4 4.4.5 4.5.5 4.6.1 4.7.18 4.7.19 4.7.20 4.7.7 7.0.13 7.0.14 7.0.16 trunk 1.0 1.1 1.1.3 1.2 1.2.1 1.3 1.3.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.5.1 1.4.6 1.4.6.1 1.4.6.2 1.4.6.3 1.4.6.4 1.4.7 1.4.8 1.4.9 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.2 2.2.1 2.2.1.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.5.1 2.2.6 2.2.6.1 2.2.6.2 2.2.6.3 2.2.6.4 2.2.7 2.2.8 2.2.8.1 2.2.9 2.3.1 2.3.2 2.3.3
codepress-admin-columns / classes / Formatter / Date / TimeDifference.php
codepress-admin-columns / classes / Formatter / Date Last commit date
DateFormat.php 4 days ago DateObject.php 4 days ago LocalizedDateFormat.php 4 days ago TimeDifference.php 4 days ago Timestamp.php 4 days ago
TimeDifference.php
36 lines
1 <?php
2
3 declare(strict_types=1);
4
5 namespace AC\Formatter\Date;
6
7 use AC\Exception\ValueNotFoundException;
8 use AC\Type\Value;
9 use DateTime;
10
11 final class TimeDifference extends DateObject
12 {
13 public function format(Value $value): Value
14 {
15 $date = parent::format($value)->get_value();
16
17 if (! $date instanceof DateTime) {
18 throw new ValueNotFoundException('Invalid date object');
19 }
20
21 $timestamp = $date->getTimestamp();
22 $current_time = current_time('timestamp');
23
24 $tpl = __('%s ago');
25
26 if ($timestamp > $current_time) {
27 $tpl = __('in %s', 'codepress-admin-columns');
28 }
29
30 return $value->with_value(
31 sprintf($tpl, human_time_diff($timestamp, $current_time))
32 );
33 }
34
35 }
36