ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
OpenedIntegerInterval.php
Go to the documentation of this file.
1 <?php
2 declare(strict_types=1);
3 /* Copyright (c) 1998-2019 ILIAS open source, Extended GPL, see docs/LICENSE */
4 
9 namespace ILIAS\Data\Interval;
10 
12 
14 {
18  private $minimum;
19 
23  private $maximum;
24 
30  public function __construct(int $minimum, int $maximum)
31  {
32  if ($maximum < $minimum) {
34  sprintf('The maximum("%s") can NOT be lower than the minimum("%s")', $maximum, $minimum),
35  'exception_maximum_minimum_mismatch',
36  $maximum,
37  $minimum
38  );
39  }
40 
41  $this->minimum = $minimum;
42  $this->maximum = $maximum;
43  }
44 
49  public function spans(int $numberToCheck) : bool
50  {
51  if ($numberToCheck < $this->minimum) {
52  return false;
53  } elseif ($numberToCheck > $this->maximum) {
54  return false;
55  }
56 
57  return true;
58  }
59 
63  public function minimum() : int
64  {
65  return $this->minimum;
66  }
67 
71  public function maximum() : int
72  {
73  return $this->maximum;
74  }
75 }