Passed
Push — develop-3.2.x-2.2 ( 647685...52b7f1 )
by Mario
04:22
created

compare::compare_gt()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 1
c 1
b 0
f 0
nc 1
nop 2
dl 0
loc 3
rs 10
1
<?php
2
/**
3
 *
4
 * PayPal Donation extension for the phpBB Forum Software package.
5
 *
6
 * @copyright (c) 2015 Skouat
7
 * @license GNU General Public License, version 2 (GPL-2.0)
8
 *
9
 */
10
11
namespace skouat\ppde\operators;
12
13
class compare
14
{
15
	/** @var array */
16
	private static $operators_table = array(
17
		'<'  => 'compare_lt',
18
		'<=' => 'compare_lte',
19
		'==' => 'compare_eq',
20
		'>=' => 'compare_gte',
21
		'>'  => 'compare_gt',
22
	);
23
24
	/**
25
	 * Compare two value
26
	 *
27
	 * @param int    $value1
28
	 * @param int    $value2
29
	 * @param string $operator
30
	 *
31
	 * @return bool
32
	 * @access public
33
	 */
34
	public function compare($value1, $value2, $operator)
35
	{
36
		if (array_key_exists($operator, self::$operators_table))
37
		{
38
			return call_user_func_array(array($this, self::$operators_table[$operator]), array($value1, $value2));
39
		}
40
41
		return false;
42
	}
43
44
	/**
45
	 * Method called by $this->compare
46
	 *
47
	 * @param $a
48
	 * @param $b
49
	 *
50
	 * @return bool
51
	 * @access private
52
	 */
53
	private function compare_lt($a, $b)
54
	{
55
		return $a < $b;
56
	}
57
58
	/**
59
	 * Method called by $this->compare
60
	 *
61
	 * @param $a
62
	 * @param $b
63
	 *
64
	 * @return bool
65
	 * @access private
66
	 */
67
	private function compare_lte($a, $b)
68
	{
69
		return $a <= $b;
70
	}
71
72
	/**
73
	 * Method called by $this->compare
74
	 *
75
	 * @param $a
76
	 * @param $b
77
	 *
78
	 * @return bool
79
	 * @access private
80
	 */
81
	private function compare_eq($a, $b)
82
	{
83
		return $a == $b;
84
	}
85
86
	/**
87
	 * Method called by $this->compare
88
	 *
89
	 * @param $a
90
	 * @param $b
91
	 *
92
	 * @return bool
93
	 * @access private
94
	 */
95
	private function compare_gte($a, $b)
96
	{
97
		return $a >= $b;
98
	}
99
100
	/**
101
	 * Method called by $this->compare
102
	 *
103
	 * @param $a
104
	 * @param $b
105
	 *
106
	 * @return bool
107
	 * @access private
108
	 */
109
	private function compare_gt($a, $b)
110
	{
111
		return $a > $b;
112
	}
113
}
114