@@ -12,4 +12,4 @@ |
||
12 | 12 | |
13 | 13 | namespace chillerlan\Traits; |
14 | 14 | |
15 | -class TraitException extends \Exception{} |
|
15 | +class TraitException extends \Exception {} |
@@ -17,7 +17,7 @@ |
||
17 | 17 | * |
18 | 18 | * @link http://php.net/manual/class.countable.php |
19 | 19 | */ |
20 | -trait CountableTrait{ |
|
20 | +trait CountableTrait { |
|
21 | 21 | |
22 | 22 | /** |
23 | 23 | * @var array |
@@ -18,7 +18,7 @@ discard block |
||
18 | 18 | /** |
19 | 19 | * |
20 | 20 | */ |
21 | -class ByteArrayDispenser{ |
|
21 | +class ByteArrayDispenser { |
|
22 | 22 | |
23 | 23 | /** |
24 | 24 | * @var string |
@@ -42,7 +42,7 @@ discard block |
||
42 | 42 | */ |
43 | 43 | public function fromIntSize(int $size):ByteArray{ |
44 | 44 | |
45 | - if(!$this->isAllowedInt($size)){ |
|
45 | + if (!$this->isAllowedInt($size)) { |
|
46 | 46 | throw new TraitException('invalid size'); |
47 | 47 | } |
48 | 48 | |
@@ -58,12 +58,12 @@ discard block |
||
58 | 58 | */ |
59 | 59 | public function fromArray($array, $save_indexes = null):ByteArray{ |
60 | 60 | |
61 | - try{ |
|
61 | + try { |
|
62 | 62 | $out = $this->fromIntSize(count($array)); |
63 | 63 | |
64 | 64 | $array = ($save_indexes ?? true) ? $array : array_values($array); |
65 | 65 | |
66 | - foreach($array as $k => $v){ |
|
66 | + foreach ($array as $k => $v) { |
|
67 | 67 | $out[$k] = $v; |
68 | 68 | } |
69 | 69 | |
@@ -71,7 +71,7 @@ discard block |
||
71 | 71 | } |
72 | 72 | // this can be anything |
73 | 73 | // @codeCoverageIgnoreStart |
74 | - catch(Exception $e){ |
|
74 | + catch (Exception $e) { |
|
75 | 75 | throw new TraitException($e->getMessage()); |
76 | 76 | } |
77 | 77 | // @codeCoverageIgnoreEnd |
@@ -88,7 +88,7 @@ discard block |
||
88 | 88 | */ |
89 | 89 | public function fromArrayFill(int $len, $fill = null):ByteArray{ |
90 | 90 | |
91 | - if(!$this->isAllowedInt($len)){ |
|
91 | + if (!$this->isAllowedInt($len)) { |
|
92 | 92 | throw new TraitException('invalid length'); |
93 | 93 | } |
94 | 94 | |
@@ -124,7 +124,7 @@ discard block |
||
124 | 124 | public function fromHex(string $hex):ByteArray{ |
125 | 125 | $hex = preg_replace('/[\s\r\n\t ]/', '', $hex); |
126 | 126 | |
127 | - if(!$this->isAllowedHex($hex)){ |
|
127 | + if (!$this->isAllowedHex($hex)) { |
|
128 | 128 | throw new TraitException('invalid hex string'); |
129 | 129 | } |
130 | 130 | |
@@ -151,7 +151,7 @@ discard block |
||
151 | 151 | public function fromJSON(string $json):ByteArray{ |
152 | 152 | $json = trim($json); |
153 | 153 | |
154 | - if(!$this->isAllowedJSON($json)){ |
|
154 | + if (!$this->isAllowedJSON($json)) { |
|
155 | 155 | throw new TraitException('invalid JSON array'); |
156 | 156 | } |
157 | 157 | |
@@ -178,7 +178,7 @@ discard block |
||
178 | 178 | public function fromBase64(string $base64):ByteArray{ |
179 | 179 | $base64 = trim($base64); |
180 | 180 | |
181 | - if(!$this->isAllowedBase64($base64)){ |
|
181 | + if (!$this->isAllowedBase64($base64)) { |
|
182 | 182 | throw new TraitException('invalid base64 string'); |
183 | 183 | } |
184 | 184 | |
@@ -205,7 +205,7 @@ discard block |
||
205 | 205 | public function fromBin(string $bin):ByteArray{ |
206 | 206 | $bin = trim($bin); |
207 | 207 | |
208 | - if(!$this->isAllowedBin($bin)){ |
|
208 | + if (!$this->isAllowedBin($bin)) { |
|
209 | 209 | throw new TraitException('invalid binary string'); |
210 | 210 | } |
211 | 211 | |
@@ -220,19 +220,19 @@ discard block |
||
220 | 220 | */ |
221 | 221 | public function guessFrom($data):ByteArray{ |
222 | 222 | |
223 | - if($data instanceof Traversable){ |
|
223 | + if ($data instanceof Traversable) { |
|
224 | 224 | return $this->fromArray(iterator_to_array($data)); |
225 | 225 | } |
226 | 226 | |
227 | - if(is_array($data)){ |
|
227 | + if (is_array($data)) { |
|
228 | 228 | return $this->fromArray($data); |
229 | 229 | } |
230 | 230 | |
231 | - if(is_string($data)){ |
|
231 | + if (is_string($data)) { |
|
232 | 232 | |
233 | - foreach(['Bin', 'Hex', 'JSON', 'Base64'] as $type){ |
|
233 | + foreach (['Bin', 'Hex', 'JSON', 'Base64'] as $type) { |
|
234 | 234 | |
235 | - if(call_user_func_array([$this, 'isAllowed'.$type], [$data]) === true){ |
|
235 | + if (call_user_func_array([$this, 'isAllowed'.$type], [$data]) === true) { |
|
236 | 236 | return call_user_func_array([$this, 'from'.$type], [$data]); |
237 | 237 | } |
238 | 238 |
@@ -15,7 +15,7 @@ discard block |
||
15 | 15 | /** |
16 | 16 | * @link https://github.com/laravel/framework/blob/5.4/src/Illuminate/Support/Arr.php |
17 | 17 | */ |
18 | -trait DotArray{ |
|
18 | +trait DotArray { |
|
19 | 19 | |
20 | 20 | /** |
21 | 21 | * @var array |
@@ -30,17 +30,17 @@ discard block |
||
30 | 30 | * |
31 | 31 | * @return mixed returns $array[$key], $default otherwise. |
32 | 32 | */ |
33 | - public function get(string $dotKey, $default = null){ |
|
33 | + public function get(string $dotKey, $default = null) { |
|
34 | 34 | |
35 | - if(isset($this->array[$dotKey])){ |
|
35 | + if (isset($this->array[$dotKey])) { |
|
36 | 36 | return $this->array[$dotKey]; |
37 | 37 | } |
38 | 38 | |
39 | 39 | $array = &$this->array; |
40 | 40 | |
41 | - foreach(explode('.', $dotKey) as $segment){ |
|
41 | + foreach (explode('.', $dotKey) as $segment) { |
|
42 | 42 | |
43 | - if(!is_array($array) || !array_key_exists($segment, $array)){ |
|
43 | + if (!is_array($array) || !array_key_exists($segment, $array)) { |
|
44 | 44 | return $default; |
45 | 45 | } |
46 | 46 | |
@@ -59,19 +59,19 @@ discard block |
||
59 | 59 | */ |
60 | 60 | public function in(string $dotKey):bool{ |
61 | 61 | |
62 | - if(empty($this->array)){ |
|
62 | + if (empty($this->array)) { |
|
63 | 63 | return false; |
64 | 64 | } |
65 | 65 | |
66 | - if(array_key_exists($dotKey, $this->array)){ |
|
66 | + if (array_key_exists($dotKey, $this->array)) { |
|
67 | 67 | return true; |
68 | 68 | } |
69 | 69 | |
70 | 70 | $array = &$this->array; |
71 | 71 | |
72 | - foreach(explode('.', $dotKey) as $segment){ |
|
72 | + foreach (explode('.', $dotKey) as $segment) { |
|
73 | 73 | |
74 | - if(!is_array($array) || !array_key_exists($segment, $array)){ |
|
74 | + if (!is_array($array) || !array_key_exists($segment, $array)) { |
|
75 | 75 | return false; |
76 | 76 | } |
77 | 77 | |
@@ -91,9 +91,9 @@ discard block |
||
91 | 91 | * |
92 | 92 | * @return \chillerlan\Traits\ArrayHelpers\DotArray |
93 | 93 | */ |
94 | - public function set(string $dotKey, $value){ |
|
94 | + public function set(string $dotKey, $value) { |
|
95 | 95 | |
96 | - if(empty($dotKey)){ |
|
96 | + if (empty($dotKey)) { |
|
97 | 97 | $this->array = $value; |
98 | 98 | |
99 | 99 | return $this; |
@@ -102,13 +102,13 @@ discard block |
||
102 | 102 | $array = &$this->array; |
103 | 103 | $keys = explode('.', $dotKey); |
104 | 104 | |
105 | - while(count($keys) > 1){ |
|
105 | + while (count($keys) > 1) { |
|
106 | 106 | $dotKey = array_shift($keys); |
107 | 107 | |
108 | 108 | // If the key doesn't exist at this depth, we will just create an empty array |
109 | 109 | // to hold the next value, allowing us to create the arrays to hold final |
110 | 110 | // values at the correct depth. Then we'll keep digging into the array. |
111 | - if(!isset($array[$dotKey]) || !is_array($array[$dotKey])){ |
|
111 | + if (!isset($array[$dotKey]) || !is_array($array[$dotKey])) { |
|
112 | 112 | $array[$dotKey] = []; |
113 | 113 | } |
114 | 114 |
@@ -70,8 +70,7 @@ |
||
70 | 70 | |
71 | 71 | if(array_key_exists($var, $_ENV)){ |
72 | 72 | $env = $_ENV[$var]; |
73 | - } |
|
74 | - elseif(function_exists('getenv')){ |
|
73 | + } elseif(function_exists('getenv')){ |
|
75 | 74 | $env = getenv($var); |
76 | 75 | } |
77 | 76 | // @codeCoverageIgnoreStart |
@@ -21,7 +21,7 @@ discard block |
||
21 | 21 | * @link http://php.net/variables-order |
22 | 22 | * |
23 | 23 | */ |
24 | -trait Env{ |
|
24 | +trait Env { |
|
25 | 25 | |
26 | 26 | /** |
27 | 27 | * a backup environment in case everything goes downhill |
@@ -47,7 +47,7 @@ discard block |
||
47 | 47 | * |
48 | 48 | * @return $this |
49 | 49 | */ |
50 | - protected function __loadEnv(string $path, string $filename = null, bool $overwrite = null, array $required = null, bool $global = null){ |
|
50 | + protected function __loadEnv(string $path, string $filename = null, bool $overwrite = null, array $required = null, bool $global = null) { |
|
51 | 51 | $this->_global = $global ?? false; |
52 | 52 | $content = $this->__read(rtrim($path, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.($filename ?? '.env')); |
53 | 53 | |
@@ -62,20 +62,20 @@ discard block |
||
62 | 62 | * |
63 | 63 | * @return bool|mixed |
64 | 64 | */ |
65 | - protected function __getEnv(string $var){ |
|
65 | + protected function __getEnv(string $var) { |
|
66 | 66 | $var = strtoupper($var); |
67 | 67 | $env = null; |
68 | 68 | |
69 | - if($this->_global === true){ |
|
69 | + if ($this->_global === true) { |
|
70 | 70 | |
71 | - if(array_key_exists($var, $_ENV)){ |
|
71 | + if (array_key_exists($var, $_ENV)) { |
|
72 | 72 | $env = $_ENV[$var]; |
73 | 73 | } |
74 | - elseif(function_exists('getenv')){ |
|
74 | + elseif (function_exists('getenv')) { |
|
75 | 75 | $env = getenv($var); |
76 | 76 | } |
77 | 77 | // @codeCoverageIgnoreStart |
78 | - elseif(function_exists('apache_getenv')){ |
|
78 | + elseif (function_exists('apache_getenv')) { |
|
79 | 79 | /** @noinspection PhpComposerExtensionStubsInspection */ |
80 | 80 | $env = apache_getenv($var); |
81 | 81 | } |
@@ -92,18 +92,18 @@ discard block |
||
92 | 92 | * |
93 | 93 | * @return $this |
94 | 94 | */ |
95 | - protected function __setEnv(string $var, string $value = null){ |
|
95 | + protected function __setEnv(string $var, string $value = null) { |
|
96 | 96 | $var = strtoupper($var); |
97 | 97 | $value = $this->__parse($value); |
98 | 98 | |
99 | - if($this->_global === true){ |
|
99 | + if ($this->_global === true) { |
|
100 | 100 | putenv($var.'='.$value); |
101 | 101 | |
102 | 102 | // fill $_ENV explicitly, assuming variables_order="GPCS" (production) |
103 | 103 | $_ENV[$var] = $value; |
104 | 104 | |
105 | 105 | // @codeCoverageIgnoreStart |
106 | - if(function_exists('apache_setenv')){ |
|
106 | + if (function_exists('apache_setenv')) { |
|
107 | 107 | /** @noinspection PhpComposerExtensionStubsInspection */ |
108 | 108 | apache_setenv($var, $value); |
109 | 109 | } |
@@ -136,10 +136,10 @@ discard block |
||
136 | 136 | * |
137 | 137 | * @return $this |
138 | 138 | */ |
139 | - protected function __unsetEnv(string $var){ |
|
139 | + protected function __unsetEnv(string $var) { |
|
140 | 140 | $var = strtoupper($var); |
141 | 141 | |
142 | - if($this->_global === true){ |
|
142 | + if ($this->_global === true) { |
|
143 | 143 | unset($_ENV[$var]); |
144 | 144 | putenv($var); |
145 | 145 | } |
@@ -154,9 +154,9 @@ discard block |
||
154 | 154 | * |
155 | 155 | * @return $this |
156 | 156 | */ |
157 | - protected function __clearEnv(){ |
|
157 | + protected function __clearEnv() { |
|
158 | 158 | |
159 | - if($this->_global === true){ |
|
159 | + if ($this->_global === true) { |
|
160 | 160 | $_ENV = []; |
161 | 161 | } |
162 | 162 | |
@@ -173,7 +173,7 @@ discard block |
||
173 | 173 | */ |
174 | 174 | private function __read(string $file):array{ |
175 | 175 | |
176 | - if(!is_readable($file) || !is_file($file)){ |
|
176 | + if (!is_readable($file) || !is_file($file)) { |
|
177 | 177 | throw new TraitException('invalid file: '.$file); |
178 | 178 | } |
179 | 179 | |
@@ -183,7 +183,7 @@ discard block |
||
183 | 183 | $lines = file($file, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); |
184 | 184 | ini_set('auto_detect_line_endings', $autodetect); |
185 | 185 | |
186 | - if(!is_array($lines) || empty($lines)){ |
|
186 | + if (!is_array($lines) || empty($lines)) { |
|
187 | 187 | throw new TraitException('error while reading file: '.$file); |
188 | 188 | } |
189 | 189 | |
@@ -196,19 +196,19 @@ discard block |
||
196 | 196 | * |
197 | 197 | * @return $this |
198 | 198 | */ |
199 | - private function __load(array $data, bool $overwrite){ |
|
199 | + private function __load(array $data, bool $overwrite) { |
|
200 | 200 | |
201 | - foreach($data as $line){ |
|
201 | + foreach ($data as $line) { |
|
202 | 202 | |
203 | 203 | // skip empty lines and comments |
204 | - if(empty($line) || strpos($line, '#') === 0){ |
|
204 | + if (empty($line) || strpos($line, '#') === 0) { |
|
205 | 205 | continue; |
206 | 206 | } |
207 | 207 | |
208 | 208 | $kv = array_map('trim', explode('=', $line, 2)); |
209 | 209 | |
210 | 210 | // skip empty and numeric keys, keys with spaces, existing keys that shall not be overwritten |
211 | - if(empty($kv[0]) || is_numeric($kv[0]) || strpos($kv[0], ' ') !== false || (!$overwrite && $this->__getEnv($kv[0]) !== false)){ |
|
211 | + if (empty($kv[0]) || is_numeric($kv[0]) || strpos($kv[0], ' ') !== false || (!$overwrite && $this->__getEnv($kv[0]) !== false)) { |
|
212 | 212 | continue; |
213 | 213 | } |
214 | 214 | |
@@ -223,9 +223,9 @@ discard block |
||
223 | 223 | * |
224 | 224 | * @return string|null |
225 | 225 | */ |
226 | - private function __parse(string $value = null):?string{ |
|
226 | + private function __parse(string $value = null): ?string{ |
|
227 | 227 | |
228 | - if($value !== null){ |
|
228 | + if ($value !== null) { |
|
229 | 229 | |
230 | 230 | $q = $value[0] ?? null; |
231 | 231 | |
@@ -239,8 +239,8 @@ discard block |
||
239 | 239 | $value = implode(PHP_EOL, explode('\\n', $value)); |
240 | 240 | |
241 | 241 | // handle nested ${VARS} |
242 | - if(strpos($value, '$') !== false){ |
|
243 | - $value = preg_replace_callback('/\${(?<var>[_a-z\d]+)}/i', function($matches){ |
|
242 | + if (strpos($value, '$') !== false) { |
|
243 | + $value = preg_replace_callback('/\${(?<var>[_a-z\d]+)}/i', function($matches) { |
|
244 | 244 | return $this->__getEnv($matches['var']); |
245 | 245 | }, $value); |
246 | 246 | } |
@@ -256,14 +256,14 @@ discard block |
||
256 | 256 | * @return $this |
257 | 257 | * @throws \chillerlan\Traits\TraitException |
258 | 258 | */ |
259 | - private function __check(array $required = null){ |
|
259 | + private function __check(array $required = null) { |
|
260 | 260 | |
261 | - if($required === null || empty($required)){ |
|
261 | + if ($required === null || empty($required)) { |
|
262 | 262 | return $this; |
263 | 263 | } |
264 | 264 | |
265 | - foreach($required as $var){ |
|
266 | - if(!$this->__issetEnv($var)){ |
|
265 | + foreach ($required as $var) { |
|
266 | + if (!$this->__issetEnv($var)) { |
|
267 | 267 | throw new TraitException('required variable not set: '.strtoupper($var)); |
268 | 268 | } |
269 | 269 | } |
@@ -23,7 +23,7 @@ discard block |
||
23 | 23 | * @method void unset(string $var) |
24 | 24 | * @method DotEnv clear() |
25 | 25 | */ |
26 | -class DotEnv{ |
|
26 | +class DotEnv { |
|
27 | 27 | use Env{ |
28 | 28 | // allow a magic getter & setter |
29 | 29 | __getEnv as public __get; |
@@ -57,7 +57,7 @@ discard block |
||
57 | 57 | * @param string|null $filename |
58 | 58 | * @param bool|null $global |
59 | 59 | */ |
60 | - public function __construct(string $path, string $filename = null, bool $global = null){ |
|
60 | + public function __construct(string $path, string $filename = null, bool $global = null) { |
|
61 | 61 | $this->path = $path; |
62 | 62 | $this->filename = $filename; |
63 | 63 | $this->_global = $global ?? true; // emulate vlucas/dotenv behaviour by default |
@@ -17,7 +17,7 @@ discard block |
||
17 | 17 | /** |
18 | 18 | * @extends \SplFixedArray |
19 | 19 | */ |
20 | -class ByteArray extends SplFixedArray{ |
|
20 | +class ByteArray extends SplFixedArray { |
|
21 | 21 | |
22 | 22 | /** |
23 | 23 | * @return string |
@@ -30,7 +30,7 @@ discard block |
||
30 | 30 | * @return string |
31 | 31 | */ |
32 | 32 | public function toHex():string{ |
33 | - return $this->map(function($v){ |
|
33 | + return $this->map(function($v) { |
|
34 | 34 | return str_pad(dechex($v), '2', '0', STR_PAD_LEFT); |
35 | 35 | }); |
36 | 36 | } |
@@ -53,7 +53,7 @@ discard block |
||
53 | 53 | * @return string |
54 | 54 | */ |
55 | 55 | public function toBin():string{ |
56 | - return $this->map(function($v){ |
|
56 | + return $this->map(function($v) { |
|
57 | 57 | return str_pad(decbin($v), '8', '0', STR_PAD_LEFT); |
58 | 58 | }); |
59 | 59 | } |
@@ -82,11 +82,11 @@ discard block |
||
82 | 82 | |
83 | 83 | $diff = $offset + $length; |
84 | 84 | |
85 | - if($diff > $this->count()){ |
|
85 | + if ($diff > $this->count()) { |
|
86 | 86 | $this->setSize($diff); |
87 | 87 | } |
88 | 88 | |
89 | - for($i = 0; $i < $length; $i++){ |
|
89 | + for ($i = 0; $i < $length; $i++) { |
|
90 | 90 | $this[$i + $offset] = $src[$i + $srcOffset]; |
91 | 91 | } |
92 | 92 | |
@@ -103,9 +103,9 @@ discard block |
||
103 | 103 | |
104 | 104 | // keep an extended class |
105 | 105 | /** @var \chillerlan\Traits\ArrayHelpers\ByteArray $slice */ |
106 | - $slice = (new ReflectionClass($this))->newInstanceArgs([$length ?? ($this->count() - $offset)]); |
|
106 | + $slice = (new ReflectionClass($this))->newInstanceArgs([$length ?? ($this->count() - $offset)]); |
|
107 | 107 | |
108 | - foreach($slice as $i => $_){ |
|
108 | + foreach ($slice as $i => $_) { |
|
109 | 109 | $slice[$i] = $this[$offset + $i]; |
110 | 110 | } |
111 | 111 | |
@@ -119,13 +119,13 @@ discard block |
||
119 | 119 | */ |
120 | 120 | public function equal(SplFixedArray $array):bool{ |
121 | 121 | |
122 | - if($this->count() !== $array->count()){ |
|
122 | + if ($this->count() !== $array->count()) { |
|
123 | 123 | return false; |
124 | 124 | } |
125 | 125 | |
126 | 126 | $diff = 0; |
127 | 127 | |
128 | - foreach($this as $k => $v){ |
|
128 | + foreach ($this as $k => $v) { |
|
129 | 129 | $diff |= $v ^ $array[$k]; |
130 | 130 | } |
131 | 131 |
@@ -12,7 +12,7 @@ |
||
12 | 12 | |
13 | 13 | namespace chillerlan\Traits; |
14 | 14 | |
15 | -interface EnumerableInterface{ |
|
15 | +interface EnumerableInterface { |
|
16 | 16 | |
17 | 17 | /** |
18 | 18 | * @return array |
@@ -20,7 +20,7 @@ |
||
20 | 20 | * |
21 | 21 | * @method \chillerlan\Traits\Crypto\CryptoBoxInterface open(string $box_bin, string $nonce_bin) |
22 | 22 | */ |
23 | -interface CryptoBoxInterface{ |
|
23 | +interface CryptoBoxInterface { |
|
24 | 24 | |
25 | 25 | /** |
26 | 26 | * @param string $message |