-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCore.php
More file actions
187 lines (171 loc) · 5 KB
/
Core.php
File metadata and controls
187 lines (171 loc) · 5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
<?php // vim:ts=3:sts=3:sw=3:et:
/**
* Core functions which could be added to PHP's standard library
*
* PHP Version 5
*
* @category PHP
* @package MindFrame2
* @author Bryan C. Geraghty <bryan@ravensight.org>
* @copyright 2005-2011 Bryan C. Geraghty
* @license http://www.gnu.org/licenses/lgpl-3.0.txt GNU LGPL
* @link https://github.com/archwisp/MindFrame2
*/
/**
* Core functions which could be added to PHP's standard library
*
* @category PHP
* @package MindFrame2
* @author Bryan C. Geraghty <bryan@ravensight.org>
* @license http://www.gnu.org/licenses/lgpl-3.0.txt GNU LGPL
* @link https://github.com/archwisp/MindFrame2
*/
class MindFrame2_Core
{
/**
* Validates a boolean argument and throws a structured exception on
* failure.
*
* @param int $value Value to be validated
* @param int $position Argument number
* @param strin $name Argument name
*
* @return void
*
* @throws InvalidArgumentException on failure
*/
public static function assertArgumentIsBool($value, $position, $name)
{
if (!is_bool($value))
{
$skel = 'Expected boolean value for argument #%d (%s), %s given';
$message = sprintf($skel, $position, $name, gettype($value));
throw new InvalidArgumentException($message);
}
}
/**
* Validates an integer argument and throws a structured exception on
* failure.
*
* @param int $value Value to be validated
* @param int $position Argument number
* @param strin $name Argument name
*
* @return void
*
* @throws InvalidArgumentException on failure
*/
public static function assertArgumentIsInt($value, $position, $name)
{
if (!is_int($value))
{
$skel = 'Expected integer value for argument #%d (%s), %s given';
$message = sprintf($skel, $position, $name, gettype($value));
throw new InvalidArgumentException($message);
}
}
/**
* Validates an integer argument and throws a structured exception on
* failure.
*
* @param int $value Value to be validated
* @param int $position Argument number
* @param strin $name Argument name
*
* @return void
*
* @throws InvalidArgumentException on failure
*/
public static function assertArgumentIsIntOrNull($value, $position, $name)
{
if (!is_int($value) && !is_null($value))
{
$skel = 'Expected integer value for argument #%d (%s), %s given';
$message = sprintf($skel, $position, $name, gettype($value));
throw new InvalidArgumentException($message);
}
}
/**
* Validates that an argument is not blank and throws a structured exception
* on failure. If the value is a string, it will be trimmed before
* checking.
*
* @param mixed $value Value to be validated
* @param int $position Argument number
* @param strin $name Argument name
*
* @return void
*
* @throws InvalidArgumentException on failure
*/
public static function assertArgumentIsNotBlank($value, $position, $name)
{
if (trim($value) === '')
{
$skel = 'Argument #%d (%s) cannot be blank';
$message = sprintf($skel, $position, $name);
throw new InvalidArgumentException($message);
}
}
/**
* Validates that an argument is not empty and throws a structured exception
* on failure. If the value is a string, it will be trimmed before
* checking.
*
* @param mixed $value Value to be validated
* @param int $position Argument number
* @param strin $name Argument name
*
* @return void
*
* @throws InvalidArgumentException on failure
*/
public static function assertArgumentIsNotEmpty($value, $position, $name)
{
if (empty($value))
{
$skel = 'Argument #%d (%s) cannot be empty';
$message = sprintf($skel, $position, $name);
throw new InvalidArgumentException($message);
}
}
/**
* Validates a string argument and throws a structured exception on
* failure.
*
* @param int $value Value to be validated
* @param int $position Argument number
* @param strin $name Argument name
*
* @return void
*
* @throws InvalidArgumentException on failure
*/
public static function assertArgumentIsString($value, $position, $name)
{
if (!is_string($value))
{
$skel = 'Expected string value for argument #%d (%s), %s given';
$message = sprintf($skel, $position, $name, gettype($value));
throw new InvalidArgumentException($message);
}
}
/**
* Returns the first argument value which is not empty
*
* @return mixed or FALSE
*/
public static function coalesce()
{
$arguments = func_get_args();
foreach ($arguments as $argument)
{
if (!empty($argument))
{
return $argument;
}
}
// end foreach // ($arguments as $argument) //
return FALSE;
}
}