PluginProbe ʕ •ᴥ•ʔ
Admin Columns / 4.3.2
Admin Columns v4.3.2
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 / Storage / Timestamp.php
codepress-admin-columns / classes / Storage Last commit date
KeyValuePair.php 5 years ago ListScreenOrder.php 5 years ago Option.php 5 years ago OptionFactory.php 5 years ago SiteOption.php 5 years ago Timestamp.php 5 years ago Transaction.php 5 years ago UserMeta.php 5 years ago
Timestamp.php
71 lines
1 <?php
2
3 namespace AC\Storage;
4
5 use AC\Expirable;
6 use LogicException;
7
8 final class Timestamp implements KeyValuePair, Expirable {
9
10 /**
11 * @var KeyValuePair
12 */
13 private $storage;
14
15 /**
16 * @param KeyValuePair $storage
17 */
18 public function __construct( KeyValuePair $storage ) {
19 $this->storage = $storage;
20 }
21
22 /**
23 * @param int|null $time
24 *
25 * @return bool
26 */
27 public function is_expired( $time = null ) {
28 if ( null === $time ) {
29 $time = time();
30 }
31
32 return $time > (int) $this->get();
33 }
34
35 /**
36 * @param int $value
37 *
38 * @return bool
39 */
40 public function validate( $value ) {
41 return preg_match( '/^[1-9]\d*$/', $value );
42 }
43
44 /**
45 * @param array $args
46 *
47 * @return mixed
48 */
49 public function get( array $args = [] ) {
50 return $this->storage->get( $args );
51 }
52
53 public function delete() {
54 return $this->storage->delete();
55 }
56
57 /**
58 * @param int $value
59 *
60 * @return bool
61 * @throws LogicException
62 */
63 public function save( $value ) {
64 if ( ! $this->validate( $value ) ) {
65 throw new LogicException( 'Value needs to be a positive integer.' );
66 }
67
68 return $this->storage->save( $value );
69 }
70
71 }