Passed
Branch master (3de078)
by Sebastian
03:38
created
src/URLInfo.php 1 patch
Indentation   +154 added lines, -154 removed lines patch added patch discarded remove patch
@@ -39,42 +39,42 @@  discard block
 block discarded – undo
39 39
     const TYPE_PHONE = 'phone';
40 40
     const TYPE_URL = 'url';
41 41
     
42
-   /**
43
-    * The original URL that was passed to the constructor.
44
-    * @var string
45
-    */
42
+    /**
43
+     * The original URL that was passed to the constructor.
44
+     * @var string
45
+     */
46 46
     protected $rawURL;
47 47
 
48
-   /**
49
-    * @var array
50
-    */
48
+    /**
49
+     * @var array
50
+     */
51 51
     protected $info;
52 52
     
53
-   /**
54
-    * @var string[]
55
-    */
53
+    /**
54
+     * @var string[]
55
+     */
56 56
     protected $excludedParams = array();
57 57
     
58
-   /**
59
-    * @var bool
60
-    * @see URLInfo::setParamExclusion()
61
-    */
58
+    /**
59
+     * @var bool
60
+     * @see URLInfo::setParamExclusion()
61
+     */
62 62
     protected $paramExclusion = false;
63 63
     
64
-   /**
65
-    * @var array
66
-    * @see URLInfo::getTypeLabel()
67
-    */
64
+    /**
65
+     * @var array
66
+     * @see URLInfo::getTypeLabel()
67
+     */
68 68
     protected static $typeLabels;
69 69
     
70
-   /**
71
-    * @var bool
72
-    */
70
+    /**
71
+     * @var bool
72
+     */
73 73
     protected $highlightExcluded = false;
74 74
     
75
-   /**
76
-    * @var array
77
-    */
75
+    /**
76
+     * @var array
77
+     */
78 78
     protected $infoKeys = array(
79 79
         'scheme',
80 80
         'host',
@@ -86,19 +86,19 @@  discard block
 block discarded – undo
86 86
         'fragment'
87 87
     );
88 88
     
89
-   /**
90
-    * @var string
91
-    */
89
+    /**
90
+     * @var string
91
+     */
92 92
     protected $url;
93 93
     
94
-   /**
95
-    * @var URLInfo_Parser
96
-    */
94
+    /**
95
+     * @var URLInfo_Parser
96
+     */
97 97
     protected $parser;
98 98
     
99
-   /**
100
-    * @var URLInfo_Normalizer
101
-    */
99
+    /**
100
+     * @var URLInfo_Normalizer
101
+     */
102 102
     protected $normalizer;
103 103
     
104 104
     public function __construct(string $url)
@@ -110,13 +110,13 @@  discard block
 block discarded – undo
110 110
         $this->info = $this->parser->getInfo();
111 111
     }
112 112
     
113
-   /**
114
-    * Filters an URL: removes control characters and the
115
-    * like to have a clean URL to work with.
116
-    * 
117
-    * @param string $url
118
-    * @return string
119
-    */
113
+    /**
114
+     * Filters an URL: removes control characters and the
115
+     * like to have a clean URL to work with.
116
+     * 
117
+     * @param string $url
118
+     * @return string
119
+     */
120 120
     public static function filterURL(string $url)
121 121
     {
122 122
         return URLInfo_Filter::filter($url);
@@ -146,12 +146,12 @@  discard block
 block discarded – undo
146 146
         return $this->info['type'] === self::TYPE_PHONE;
147 147
     }
148 148
     
149
-   /**
150
-    * Whether the URL is a regular URL, not one of the 
151
-    * other types like a phone number or email address.
152
-    * 
153
-    * @return bool
154
-    */
149
+    /**
150
+     * Whether the URL is a regular URL, not one of the 
151
+     * other types like a phone number or email address.
152
+     * 
153
+     * @return bool
154
+     */
155 155
     public function isURL() : bool
156 156
     {
157 157
         $host = $this->getHost();
@@ -163,20 +163,20 @@  discard block
 block discarded – undo
163 163
         return $this->parser->isValid();
164 164
     }
165 165
     
166
-   /**
167
-    * Retrieves the host name, or an empty string if none is present.
168
-    * 
169
-    * @return string
170
-    */
166
+    /**
167
+     * Retrieves the host name, or an empty string if none is present.
168
+     * 
169
+     * @return string
170
+     */
171 171
     public function getHost() : string
172 172
     {
173 173
         return $this->getInfoKey('host');
174 174
     }
175 175
     
176
-   /**
177
-    * Retrieves the path, or an empty string if none is present.
178
-    * @return string
179
-    */
176
+    /**
177
+     * Retrieves the path, or an empty string if none is present.
178
+     * @return string
179
+     */
180 180
     public function getPath() : string
181 181
     {
182 182
         return $this->getInfoKey('path');
@@ -192,10 +192,10 @@  discard block
 block discarded – undo
192 192
         return $this->getInfoKey('scheme');
193 193
     }
194 194
     
195
-   /**
196
-    * Retrieves the port specified in the URL, or -1 if none is preseent.
197
-    * @return int
198
-    */
195
+    /**
196
+     * Retrieves the port specified in the URL, or -1 if none is preseent.
197
+     * @return int
198
+     */
199 199
     public function getPort() : int
200 200
     {
201 201
         $port = $this->getInfoKey('port');
@@ -207,13 +207,13 @@  discard block
 block discarded – undo
207 207
         return -1;
208 208
     }
209 209
     
210
-   /**
211
-    * Retrieves the raw query string, or an empty string if none is present.
212
-    * 
213
-    * @return string
214
-    * 
215
-    * @see URLInfo::getParams()
216
-    */
210
+    /**
211
+     * Retrieves the raw query string, or an empty string if none is present.
212
+     * 
213
+     * @return string
214
+     * 
215
+     * @see URLInfo::getParams()
216
+     */
217 217
     public function getQuery() : string
218 218
     {
219 219
         return $this->getInfoKey('query');
@@ -229,20 +229,20 @@  discard block
 block discarded – undo
229 229
         return $this->getInfoKey('pass');
230 230
     }
231 231
     
232
-   /**
233
-    * Whether the URL contains a port number.
234
-    * @return bool
235
-    */
232
+    /**
233
+     * Whether the URL contains a port number.
234
+     * @return bool
235
+     */
236 236
     public function hasPort() : bool
237 237
     {
238 238
         return $this->getPort() !== -1;
239 239
     }
240 240
     
241
-   /**
242
-    * Alias for the hasParams() method.
243
-    * @return bool
244
-    * @see URLInfo::hasParams()
245
-    */
241
+    /**
242
+     * Alias for the hasParams() method.
243
+     * @return bool
244
+     * @see URLInfo::hasParams()
245
+     */
246 246
     public function hasQuery() : bool
247 247
     {
248 248
         return $this->hasParams();
@@ -300,25 +300,25 @@  discard block
 block discarded – undo
300 300
         return $this->normalizer->normalize();
301 301
     }
302 302
     
303
-   /**
304
-    * Creates a hash of the URL, which can be used for comparisons.
305
-    * Since any parameters in the URL's query are sorted alphabetically,
306
-    * the same links with a different parameter order will have the 
307
-    * same hash.
308
-    * 
309
-    * @return string
310
-    */
303
+    /**
304
+     * Creates a hash of the URL, which can be used for comparisons.
305
+     * Since any parameters in the URL's query are sorted alphabetically,
306
+     * the same links with a different parameter order will have the 
307
+     * same hash.
308
+     * 
309
+     * @return string
310
+     */
311 311
     public function getHash()
312 312
     {
313 313
         return \AppUtils\ConvertHelper::string2shortHash($this->getNormalized());
314 314
     }
315 315
 
316
-   /**
317
-    * Highlights the URL using HTML tags with specific highlighting
318
-    * class names.
319
-    * 
320
-    * @return string Will return an empty string if the URL is not valid.
321
-    */
316
+    /**
317
+     * Highlights the URL using HTML tags with specific highlighting
318
+     * class names.
319
+     * 
320
+     * @return string Will return an empty string if the URL is not valid.
321
+     */
322 322
     public function getHighlighted() : string
323 323
     {
324 324
         if(!$this->isValid()) {
@@ -352,15 +352,15 @@  discard block
 block discarded – undo
352 352
         return count($params);
353 353
     }
354 354
     
355
-   /**
356
-    * Retrieves all parameters specified in the url,
357
-    * if any, as an associative array. 
358
-    * 
359
-    * NOTE: Ignores parameters that have been added
360
-    * to the excluded parameters list.
361
-    *
362
-    * @return array
363
-    */
355
+    /**
356
+     * Retrieves all parameters specified in the url,
357
+     * if any, as an associative array. 
358
+     * 
359
+     * NOTE: Ignores parameters that have been added
360
+     * to the excluded parameters list.
361
+     *
362
+     * @return array
363
+     */
364 364
     public function getParams() : array
365 365
     {
366 366
         if(!$this->paramExclusion || empty($this->excludedParams)) {
@@ -378,22 +378,22 @@  discard block
 block discarded – undo
378 378
         return $keep;
379 379
     }
380 380
     
381
-   /**
382
-    * Retrieves the names of all parameters present in the URL, if any.
383
-    * @return string[]
384
-    */
381
+    /**
382
+     * Retrieves the names of all parameters present in the URL, if any.
383
+     * @return string[]
384
+     */
385 385
     public function getParamNames() : array
386 386
     {
387 387
         $params = $this->getParams();
388 388
         return array_keys($params);
389 389
     }
390 390
     
391
-   /**
392
-    * Retrieves a specific parameter value from the URL.
393
-    * 
394
-    * @param string $name
395
-    * @return string The parameter value, or an empty string if it does not exist.
396
-    */
391
+    /**
392
+     * Retrieves a specific parameter value from the URL.
393
+     * 
394
+     * @param string $name
395
+     * @return string The parameter value, or an empty string if it does not exist.
396
+     */
397 397
     public function getParam(string $name) : string
398 398
     {
399 399
         if(isset($this->info['params'][$name])) {
@@ -403,16 +403,16 @@  discard block
 block discarded – undo
403 403
         return '';
404 404
     }
405 405
     
406
-   /**
407
-    * Excludes an URL parameter entirely if present:
408
-    * the parser will act as if the parameter was not
409
-    * even present in the source URL, effectively
410
-    * stripping it.
411
-    *
412
-    * @param string $name
413
-    * @param string $reason A human readable explanation why this is excluded - used when highlighting links.
414
-    * @return URLInfo
415
-    */
406
+    /**
407
+     * Excludes an URL parameter entirely if present:
408
+     * the parser will act as if the parameter was not
409
+     * even present in the source URL, effectively
410
+     * stripping it.
411
+     *
412
+     * @param string $name
413
+     * @param string $reason A human readable explanation why this is excluded - used when highlighting links.
414
+     * @return URLInfo
415
+     */
416 416
     public function excludeParam(string $name, string $reason) : URLInfo
417 417
     {
418 418
         if(!isset($this->excludedParams[$name]))
@@ -465,25 +465,25 @@  discard block
 block discarded – undo
465 465
         return self::$typeLabels[$this->getType()];
466 466
     }
467 467
 
468
-   /**
469
-    * Whether excluded parameters should be highlighted in
470
-    * a different color in the URL when using the
471
-    * {@link URLInfo::getHighlighted()} method.
472
-    *
473
-    * @param bool $highlight
474
-    * @return URLInfo
475
-    */
468
+    /**
469
+     * Whether excluded parameters should be highlighted in
470
+     * a different color in the URL when using the
471
+     * {@link URLInfo::getHighlighted()} method.
472
+     *
473
+     * @param bool $highlight
474
+     * @return URLInfo
475
+     */
476 476
     public function setHighlightExcluded(bool $highlight=true) : URLInfo
477 477
     {
478 478
         $this->highlightExcluded = $highlight;
479 479
         return $this;
480 480
     }
481 481
     
482
-   /**
483
-    * Returns an array with all relevant URL information.
484
-    * 
485
-    * @return array
486
-    */
482
+    /**
483
+     * Returns an array with all relevant URL information.
484
+     * 
485
+     * @return array
486
+     */
487 487
     public function toArray() : array
488 488
     {
489 489
         return array(
@@ -527,24 +527,24 @@  discard block
 block discarded – undo
527 527
         return $this;
528 528
     }
529 529
     
530
-   /**
531
-    * Whether the parameter exclusion mode is enabled:
532
-    * In this case, if any parameters have been added to the
533
-    * exclusion list, all relevant methods will exclude these.
534
-    *
535
-    * @return bool
536
-    */
530
+    /**
531
+     * Whether the parameter exclusion mode is enabled:
532
+     * In this case, if any parameters have been added to the
533
+     * exclusion list, all relevant methods will exclude these.
534
+     *
535
+     * @return bool
536
+     */
537 537
     public function isParamExclusionEnabled() : bool
538 538
     {
539 539
         return $this->paramExclusion;
540 540
     }
541 541
     
542
-   /**
543
-    * Checks whether the link contains any parameters that
544
-    * are on the list of excluded parameters.
545
-    *
546
-    * @return bool
547
-    */
542
+    /**
543
+     * Checks whether the link contains any parameters that
544
+     * are on the list of excluded parameters.
545
+     *
546
+     * @return bool
547
+     */
548 548
     public function containsExcludedParams() : bool
549 549
     {
550 550
         if(empty($this->excludedParams)) {
@@ -612,16 +612,16 @@  discard block
 block discarded – undo
612 612
         return $this->highlightExcluded;
613 613
     }
614 614
     
615
-   /**
616
-    * Checks if the URL exists, i.e. can be connected to. Will return
617
-    * true if the returned HTTP status code is `200` or `302`.
618
-    * 
619
-    * NOTE: If the target URL requires HTTP authentication, the username
620
-    * and password should be integrated into the URL.
621
-    * 
622
-    * @return bool
623
-    * @throws BaseException
624
-    */
615
+    /**
616
+     * Checks if the URL exists, i.e. can be connected to. Will return
617
+     * true if the returned HTTP status code is `200` or `302`.
618
+     * 
619
+     * NOTE: If the target URL requires HTTP authentication, the username
620
+     * and password should be integrated into the URL.
621
+     * 
622
+     * @return bool
623
+     * @throws BaseException
624
+     */
625 625
     public function tryConnect() : bool
626 626
     {
627 627
         requireCURL();
Please login to merge, or discard this patch.
src/FileHelper.php 1 patch
Indentation   +410 added lines, -410 removed lines patch added patch discarded remove patch
@@ -74,32 +74,32 @@  discard block
 block discarded – undo
74 74
     
75 75
     const ERROR_CANNOT_OPEN_FILE_TO_DETECT_BOM = 340032;
76 76
     
77
-   /**
78
-    * Opens a serialized file and returns the unserialized data.
79
-    * 
80
-    * @param string $file
81
-    * @throws FileHelper_Exception
82
-    * @return array
83
-    * @deprecated Use parseSerializedFile() instead.
84
-    * @see FileHelper::parseSerializedFile()
85
-    */
77
+    /**
78
+     * Opens a serialized file and returns the unserialized data.
79
+     * 
80
+     * @param string $file
81
+     * @throws FileHelper_Exception
82
+     * @return array
83
+     * @deprecated Use parseSerializedFile() instead.
84
+     * @see FileHelper::parseSerializedFile()
85
+     */
86 86
     public static function openUnserialized(string $file) : array
87 87
     {
88 88
         return self::parseSerializedFile($file);
89 89
     }
90 90
 
91
-   /**
92
-    * Opens a serialized file and returns the unserialized data.
93
-    *
94
-    * @param string $file
95
-    * @throws FileHelper_Exception
96
-    * @return array
97
-    * @see FileHelper::parseSerializedFile()
98
-    * 
99
-    * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
100
-    * @see FileHelper::ERROR_SERIALIZED_FILE_CANNOT_BE_READ
101
-    * @see FileHelper::ERROR_SERIALIZED_FILE_UNSERIALZE_FAILED
102
-    */
91
+    /**
92
+     * Opens a serialized file and returns the unserialized data.
93
+     *
94
+     * @param string $file
95
+     * @throws FileHelper_Exception
96
+     * @return array
97
+     * @see FileHelper::parseSerializedFile()
98
+     * 
99
+     * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
100
+     * @see FileHelper::ERROR_SERIALIZED_FILE_CANNOT_BE_READ
101
+     * @see FileHelper::ERROR_SERIALIZED_FILE_UNSERIALZE_FAILED
102
+     */
103 103
     public static function parseSerializedFile(string $file)
104 104
     {
105 105
         self::requireFileExists($file);
@@ -168,13 +168,13 @@  discard block
 block discarded – undo
168 168
         return rmdir($rootFolder);
169 169
     }
170 170
     
171
-   /**
172
-    * Create a folder, if it does not exist yet.
173
-    *  
174
-    * @param string $path
175
-    * @throws FileHelper_Exception
176
-    * @see FileHelper::ERROR_CANNOT_CREATE_FOLDER
177
-    */
171
+    /**
172
+     * Create a folder, if it does not exist yet.
173
+     *  
174
+     * @param string $path
175
+     * @throws FileHelper_Exception
176
+     * @see FileHelper::ERROR_CANNOT_CREATE_FOLDER
177
+     */
178 178
     public static function createFolder($path)
179 179
     {
180 180
         if(is_dir($path) || mkdir($path, 0777, true)) {
@@ -221,22 +221,22 @@  discard block
 block discarded – undo
221 221
         }
222 222
     }
223 223
     
224
-   /**
225
-    * Copies a file to the target location. Includes checks
226
-    * for most error sources, like the source file not being
227
-    * readable. Automatically creates the target folder if it
228
-    * does not exist yet.
229
-    * 
230
-    * @param string $sourcePath
231
-    * @param string $targetPath
232
-    * @throws FileHelper_Exception
233
-    * 
234
-    * @see FileHelper::ERROR_CANNOT_CREATE_FOLDER
235
-    * @see FileHelper::ERROR_SOURCE_FILE_NOT_FOUND
236
-    * @see FileHelper::ERROR_SOURCE_FILE_NOT_READABLE
237
-    * @see FileHelper::ERROR_TARGET_COPY_FOLDER_NOT_WRITABLE
238
-    * @see FileHelper::ERROR_CANNOT_COPY_FILE
239
-    */
224
+    /**
225
+     * Copies a file to the target location. Includes checks
226
+     * for most error sources, like the source file not being
227
+     * readable. Automatically creates the target folder if it
228
+     * does not exist yet.
229
+     * 
230
+     * @param string $sourcePath
231
+     * @param string $targetPath
232
+     * @throws FileHelper_Exception
233
+     * 
234
+     * @see FileHelper::ERROR_CANNOT_CREATE_FOLDER
235
+     * @see FileHelper::ERROR_SOURCE_FILE_NOT_FOUND
236
+     * @see FileHelper::ERROR_SOURCE_FILE_NOT_READABLE
237
+     * @see FileHelper::ERROR_TARGET_COPY_FOLDER_NOT_WRITABLE
238
+     * @see FileHelper::ERROR_CANNOT_COPY_FILE
239
+     */
240 240
     public static function copyFile($sourcePath, $targetPath)
241 241
     {
242 242
         self::requireFileExists($sourcePath, self::ERROR_SOURCE_FILE_NOT_FOUND);
@@ -287,15 +287,15 @@  discard block
 block discarded – undo
287 287
         );
288 288
     }
289 289
     
290
-   /**
291
-    * Deletes the target file. Ignored if it cannot be found,
292
-    * and throws an exception if it fails.
293
-    * 
294
-    * @param string $filePath
295
-    * @throws FileHelper_Exception
296
-    * 
297
-    * @see FileHelper::ERROR_CANNOT_DELETE_FILE
298
-    */
290
+    /**
291
+     * Deletes the target file. Ignored if it cannot be found,
292
+     * and throws an exception if it fails.
293
+     * 
294
+     * @param string $filePath
295
+     * @throws FileHelper_Exception
296
+     * 
297
+     * @see FileHelper::ERROR_CANNOT_DELETE_FILE
298
+     */
299 299
     public static function deleteFile(string $filePath) : void
300 300
     {
301 301
         if(!file_exists($filePath)) {
@@ -317,15 +317,15 @@  discard block
 block discarded – undo
317 317
     }
318 318
 
319 319
     /**
320
-    * Creates a new CSV parser instance and returns it.
321
-    * 
322
-    * @param string $delimiter
323
-    * @param string $enclosure
324
-    * @param string $escape
325
-    * @param bool $heading
326
-    * @return \parseCSV
327
-    * @todo Move this to the CSV helper.
328
-    */
320
+     * Creates a new CSV parser instance and returns it.
321
+     * 
322
+     * @param string $delimiter
323
+     * @param string $enclosure
324
+     * @param string $escape
325
+     * @param bool $heading
326
+     * @return \parseCSV
327
+     * @todo Move this to the CSV helper.
328
+     */
329 329
     public static function createCSVParser(string $delimiter = ';', string $enclosure = '"', string $escape = '\\', bool $heading=false) : \parseCSV
330 330
     {
331 331
         if($delimiter==='') { $delimiter = ';'; }
@@ -340,23 +340,23 @@  discard block
 block discarded – undo
340 340
         return $parser;
341 341
     }
342 342
 
343
-   /**
344
-    * Parses all lines in the specified string and returns an
345
-    * indexed array with all csv values in each line.
346
-    *
347
-    * @param string $csv
348
-    * @param string $delimiter
349
-    * @param string $enclosure
350
-    * @param string $escape
351
-    * @param bool $heading
352
-    * @return array
353
-    * @throws FileHelper_Exception
354
-    * 
355
-    * @todo Move this to the CSVHelper.
356
-    *
357
-    * @see parseCSVFile()
358
-    * @see FileHelper::ERROR_PARSING_CSV
359
-    */
343
+    /**
344
+     * Parses all lines in the specified string and returns an
345
+     * indexed array with all csv values in each line.
346
+     *
347
+     * @param string $csv
348
+     * @param string $delimiter
349
+     * @param string $enclosure
350
+     * @param string $escape
351
+     * @param bool $heading
352
+     * @return array
353
+     * @throws FileHelper_Exception
354
+     * 
355
+     * @todo Move this to the CSVHelper.
356
+     *
357
+     * @see parseCSVFile()
358
+     * @see FileHelper::ERROR_PARSING_CSV
359
+     */
360 360
     public static function parseCSVString(string $csv, string $delimiter = ';', string $enclosure = '"', string $escape = '\\', bool $heading=false) : array
361 361
     {
362 362
         $parser = self::createCSVParser($delimiter, $enclosure, $escape, $heading);
@@ -527,31 +527,31 @@  discard block
 block discarded – undo
527 527
         );
528 528
     }
529 529
     
530
-   /**
531
-    * Verifies whether the target file is a PHP file. The path
532
-    * to the file can be a path to a file as a string, or a 
533
-    * DirectoryIterator object instance.
534
-    * 
535
-    * @param string|\DirectoryIterator $pathOrDirIterator
536
-    * @return boolean
537
-    */
530
+    /**
531
+     * Verifies whether the target file is a PHP file. The path
532
+     * to the file can be a path to a file as a string, or a 
533
+     * DirectoryIterator object instance.
534
+     * 
535
+     * @param string|\DirectoryIterator $pathOrDirIterator
536
+     * @return boolean
537
+     */
538 538
     public static function isPHPFile($pathOrDirIterator)
539 539
     {
540
-    	if(self::getExtension($pathOrDirIterator) == 'php') {
541
-    		return true;
542
-    	}
540
+        if(self::getExtension($pathOrDirIterator) == 'php') {
541
+            return true;
542
+        }
543 543
     	
544
-    	return false;
544
+        return false;
545 545
     }
546 546
     
547
-   /**
548
-    * Retrieves the extension of the specified file. Can be a path
549
-    * to a file as a string, or a DirectoryIterator object instance.
550
-    * 
551
-    * @param string|\DirectoryIterator $pathOrDirIterator
552
-    * @param bool $lowercase
553
-    * @return string
554
-    */
547
+    /**
548
+     * Retrieves the extension of the specified file. Can be a path
549
+     * to a file as a string, or a DirectoryIterator object instance.
550
+     * 
551
+     * @param string|\DirectoryIterator $pathOrDirIterator
552
+     * @param bool $lowercase
553
+     * @return string
554
+     */
555 555
     public static function getExtension($pathOrDirIterator, bool $lowercase = true) : string
556 556
     {
557 557
         if($pathOrDirIterator instanceof \DirectoryIterator) {
@@ -562,51 +562,51 @@  discard block
 block discarded – undo
562 562
          
563 563
         $ext = pathinfo($filename, PATHINFO_EXTENSION);
564 564
         if($lowercase) {
565
-        	$ext = mb_strtolower($ext);
565
+            $ext = mb_strtolower($ext);
566 566
         }
567 567
         
568 568
         return $ext;
569 569
     }
570 570
     
571
-   /**
572
-    * Retrieves the file name from a path, with or without extension.
573
-    * The path to the file can be a string, or a DirectoryIterator object
574
-    * instance.
575
-    * 
576
-    * In case of folders, behaves like the pathinfo function: returns
577
-    * the name of the folder.
578
-    * 
579
-    * @param string|\DirectoryIterator $pathOrDirIterator
580
-    * @param bool $extension
581
-    * @return string
582
-    */
571
+    /**
572
+     * Retrieves the file name from a path, with or without extension.
573
+     * The path to the file can be a string, or a DirectoryIterator object
574
+     * instance.
575
+     * 
576
+     * In case of folders, behaves like the pathinfo function: returns
577
+     * the name of the folder.
578
+     * 
579
+     * @param string|\DirectoryIterator $pathOrDirIterator
580
+     * @param bool $extension
581
+     * @return string
582
+     */
583 583
     public static function getFilename($pathOrDirIterator, $extension = true)
584 584
     {
585 585
         $path = $pathOrDirIterator;
586
-    	if($pathOrDirIterator instanceof \DirectoryIterator) {
587
-    		$path = $pathOrDirIterator->getFilename();
588
-    	}
586
+        if($pathOrDirIterator instanceof \DirectoryIterator) {
587
+            $path = $pathOrDirIterator->getFilename();
588
+        }
589 589
     	
590
-    	$path = self::normalizePath($path);
590
+        $path = self::normalizePath($path);
591 591
     	
592
-    	if(!$extension) {
593
-    	    return pathinfo($path, PATHINFO_FILENAME);
594
-    	}
592
+        if(!$extension) {
593
+            return pathinfo($path, PATHINFO_FILENAME);
594
+        }
595 595
     	
596
-    	return pathinfo($path, PATHINFO_BASENAME); 
596
+        return pathinfo($path, PATHINFO_BASENAME); 
597 597
     }
598 598
    
599
-   /**
600
-    * Tries to read the contents of the target file and
601
-    * treat it as JSON to return the decoded JSON data.
602
-    * 
603
-    * @param string $file
604
-    * @throws FileHelper_Exception
605
-    * @return array
606
-    * 
607
-    * @see FileHelper::ERROR_CANNOT_FIND_JSON_FILE
608
-    * @see FileHelper::ERROR_CANNOT_DECODE_JSON_FILE
609
-    */ 
599
+    /**
600
+     * Tries to read the contents of the target file and
601
+     * treat it as JSON to return the decoded JSON data.
602
+     * 
603
+     * @param string $file
604
+     * @throws FileHelper_Exception
605
+     * @return array
606
+     * 
607
+     * @see FileHelper::ERROR_CANNOT_FIND_JSON_FILE
608
+     * @see FileHelper::ERROR_CANNOT_DECODE_JSON_FILE
609
+     */ 
610 610
     public static function parseJSONFile(string $file, $targetEncoding=null, $sourceEncoding=null)
611 611
     {
612 612
         self::requireFileExists($file, self::ERROR_CANNOT_FIND_JSON_FILE);
@@ -642,16 +642,16 @@  discard block
 block discarded – undo
642 642
         return $json;
643 643
     }
644 644
     
645
-   /**
646
-    * Corrects common formatting mistakes when users enter
647
-    * file names, like too many spaces, dots and the like.
648
-    * 
649
-    * NOTE: if the file name contains a path, the path is
650
-    * stripped, leaving only the file name.
651
-    * 
652
-    * @param string $name
653
-    * @return string
654
-    */
645
+    /**
646
+     * Corrects common formatting mistakes when users enter
647
+     * file names, like too many spaces, dots and the like.
648
+     * 
649
+     * NOTE: if the file name contains a path, the path is
650
+     * stripped, leaving only the file name.
651
+     * 
652
+     * @param string $name
653
+     * @return string
654
+     */
655 655
     public static function fixFileName(string $name) : string
656 656
     {
657 657
         $name = trim($name);
@@ -681,68 +681,68 @@  discard block
 block discarded – undo
681 681
         return $name;
682 682
     }
683 683
     
684
-   /**
685
-    * Creates an instance of the file finder, which is an easier
686
-    * alternative to the other manual findFile methods, since all
687
-    * options can be set by chaining.
688
-    * 
689
-    * @param string $path
690
-    * @return FileHelper_FileFinder
691
-    */
684
+    /**
685
+     * Creates an instance of the file finder, which is an easier
686
+     * alternative to the other manual findFile methods, since all
687
+     * options can be set by chaining.
688
+     * 
689
+     * @param string $path
690
+     * @return FileHelper_FileFinder
691
+     */
692 692
     public static function createFileFinder(string $path) : FileHelper_FileFinder
693 693
     {
694 694
         return new FileHelper_FileFinder($path);
695 695
     }
696 696
     
697
-   /**
698
-    * Searches for all HTML files in the target folder.
699
-    * 
700
-    * NOTE: This method only exists for backwards compatibility.
701
-    * Use the `createFileFinder()` method instead, which offers
702
-    * an object oriented interface that is much easier to use.
703
-    * 
704
-    * @param string $targetFolder
705
-    * @param array $options
706
-    * @return array An indexed array with files.
707
-    * @see FileHelper::createFileFinder()
708
-    */
697
+    /**
698
+     * Searches for all HTML files in the target folder.
699
+     * 
700
+     * NOTE: This method only exists for backwards compatibility.
701
+     * Use the `createFileFinder()` method instead, which offers
702
+     * an object oriented interface that is much easier to use.
703
+     * 
704
+     * @param string $targetFolder
705
+     * @param array $options
706
+     * @return array An indexed array with files.
707
+     * @see FileHelper::createFileFinder()
708
+     */
709 709
     public static function findHTMLFiles(string $targetFolder, array $options=array()) : array
710 710
     {
711 711
         return self::findFiles($targetFolder, array('html'), $options);
712 712
     }
713 713
 
714
-   /**
715
-    * Searches for all PHP files in the target folder.
716
-    * 
717
-    * NOTE: This method only exists for backwards compatibility.
718
-    * Use the `createFileFinder()` method instead, which offers
719
-    * an object oriented interface that is much easier to use.
720
-    * 
721
-    * @param string $targetFolder
722
-    * @param array $options
723
-    * @return array An indexed array of PHP files.
724
-    * @see FileHelper::createFileFinder()
725
-    */
714
+    /**
715
+     * Searches for all PHP files in the target folder.
716
+     * 
717
+     * NOTE: This method only exists for backwards compatibility.
718
+     * Use the `createFileFinder()` method instead, which offers
719
+     * an object oriented interface that is much easier to use.
720
+     * 
721
+     * @param string $targetFolder
722
+     * @param array $options
723
+     * @return array An indexed array of PHP files.
724
+     * @see FileHelper::createFileFinder()
725
+     */
726 726
     public static function findPHPFiles(string $targetFolder, array $options=array()) : array
727 727
     {
728 728
         return self::findFiles($targetFolder, array('php'), $options);
729 729
     }
730 730
     
731
-   /**
732
-    * Finds files according to the specified options.
733
-    * 
734
-    * NOTE: This method only exists for backwards compatibility.
735
-    * Use the `createFileFinder()` method instead, which offers
736
-    * an object oriented interface that is much easier to use.
737
-    *  
738
-    * @param string $targetFolder
739
-    * @param array $extensions
740
-    * @param array $options
741
-    * @param array $files
742
-    * @throws FileHelper_Exception
743
-    * @return array
744
-    * @see FileHelper::createFileFinder()
745
-    */
731
+    /**
732
+     * Finds files according to the specified options.
733
+     * 
734
+     * NOTE: This method only exists for backwards compatibility.
735
+     * Use the `createFileFinder()` method instead, which offers
736
+     * an object oriented interface that is much easier to use.
737
+     *  
738
+     * @param string $targetFolder
739
+     * @param array $extensions
740
+     * @param array $options
741
+     * @param array $files
742
+     * @throws FileHelper_Exception
743
+     * @return array
744
+     * @see FileHelper::createFileFinder()
745
+     */
746 746
     public static function findFiles(string $targetFolder, array $extensions=array(), array $options=array(), array $files=array()) : array
747 747
     {
748 748
         $finder = self::createFileFinder($targetFolder);
@@ -768,13 +768,13 @@  discard block
 block discarded – undo
768 768
         return $finder->getAll();
769 769
     }
770 770
 
771
-   /**
772
-    * Removes the extension from the specified path or file name,
773
-    * if any, and returns the name without the extension.
774
-    * 
775
-    * @param string $filename
776
-    * @return sTring
777
-    */
771
+    /**
772
+     * Removes the extension from the specified path or file name,
773
+     * if any, and returns the name without the extension.
774
+     * 
775
+     * @param string $filename
776
+     * @return sTring
777
+     */
778 778
     public static function removeExtension(string $filename) : string
779 779
     {
780 780
         // normalize paths to allow windows style slashes even on nix servers
@@ -783,22 +783,22 @@  discard block
 block discarded – undo
783 783
         return pathinfo($filename, PATHINFO_FILENAME);
784 784
     }
785 785
     
786
-   /**
787
-    * Detects the UTF BOM in the target file, if any. Returns
788
-    * the encoding matching the BOM, which can be any of the
789
-    * following:
790
-    * 
791
-    * <ul>
792
-    * <li>UTF32-BE</li>
793
-    * <li>UTF32-LE</li>
794
-    * <li>UTF16-BE</li>
795
-    * <li>UTF16-LE</li>
796
-    * <li>UTF8</li>
797
-    * </ul>
798
-    * 
799
-    * @param string $filename
800
-    * @return string|NULL
801
-    */
786
+    /**
787
+     * Detects the UTF BOM in the target file, if any. Returns
788
+     * the encoding matching the BOM, which can be any of the
789
+     * following:
790
+     * 
791
+     * <ul>
792
+     * <li>UTF32-BE</li>
793
+     * <li>UTF32-LE</li>
794
+     * <li>UTF16-BE</li>
795
+     * <li>UTF16-LE</li>
796
+     * <li>UTF8</li>
797
+     * </ul>
798
+     * 
799
+     * @param string $filename
800
+     * @return string|NULL
801
+     */
802 802
     public static function detectUTFBom(string $filename) : ?string
803 803
     {
804 804
         $fp = fopen($filename, 'r');
@@ -830,13 +830,13 @@  discard block
 block discarded – undo
830 830
     
831 831
     protected static $utfBoms;
832 832
     
833
-   /**
834
-    * Retrieves a list of all UTF byte order mark character
835
-    * sequences, as an assocative array with UTF encoding => bom sequence
836
-    * pairs.
837
-    * 
838
-    * @return array
839
-    */
833
+    /**
834
+     * Retrieves a list of all UTF byte order mark character
835
+     * sequences, as an assocative array with UTF encoding => bom sequence
836
+     * pairs.
837
+     * 
838
+     * @return array
839
+     */
840 840
     public static function getUTFBOMs()
841 841
     {
842 842
         if(!isset(self::$utfBoms)) {
@@ -852,15 +852,15 @@  discard block
 block discarded – undo
852 852
         return self::$utfBoms;
853 853
     }
854 854
     
855
-   /**
856
-    * Checks whether the specified encoding is a valid
857
-    * unicode encoding, for example "UTF16-LE" or "UTF8".
858
-    * Also accounts for alternate way to write the, like
859
-    * "UTF-8", and omitting little/big endian suffixes.
860
-    * 
861
-    * @param string $encoding
862
-    * @return boolean
863
-    */
855
+    /**
856
+     * Checks whether the specified encoding is a valid
857
+     * unicode encoding, for example "UTF16-LE" or "UTF8".
858
+     * Also accounts for alternate way to write the, like
859
+     * "UTF-8", and omitting little/big endian suffixes.
860
+     * 
861
+     * @param string $encoding
862
+     * @return boolean
863
+     */
864 864
     public static function isValidUnicodeEncoding(string $encoding) : bool
865 865
     {
866 866
         $encodings = self::getKnownUnicodeEncodings();
@@ -879,40 +879,40 @@  discard block
 block discarded – undo
879 879
         return in_array($encoding, $keep);
880 880
     }
881 881
     
882
-   /**
883
-    * Retrieves a list of all known unicode file encodings.
884
-    * @return array
885
-    */
882
+    /**
883
+     * Retrieves a list of all known unicode file encodings.
884
+     * @return array
885
+     */
886 886
     public static function getKnownUnicodeEncodings()
887 887
     {
888 888
         return array_keys(self::getUTFBOMs());
889 889
     }
890 890
     
891
-   /**
892
-    * Normalizes the slash style in a file or folder path,
893
-    * by replacing any antislashes with forward slashes.
894
-    * 
895
-    * @param string $path
896
-    * @return string
897
-    */
891
+    /**
892
+     * Normalizes the slash style in a file or folder path,
893
+     * by replacing any antislashes with forward slashes.
894
+     * 
895
+     * @param string $path
896
+     * @return string
897
+     */
898 898
     public static function normalizePath(string $path) : string
899 899
     {
900 900
         return str_replace(array('\\', '//'), array('/', '/'), $path);
901 901
     }
902 902
     
903
-   /**
904
-    * Saves the specified data to a file, JSON encoded.
905
-    * 
906
-    * @param mixed $data
907
-    * @param string $file
908
-    * @param bool $pretty
909
-    * @throws FileHelper_Exception
910
-    * 
911
-    * @see FileHelper::ERROR_JSON_ENCODE_ERROR
912
-    * @see FileHelper::ERROR_SAVE_FOLDER_NOT_WRITABLE
913
-    * @see FileHelper::ERROR_SAVE_FILE_NOT_WRITABLE
914
-    * @see FileHelper::ERROR_SAVE_FILE_WRITE_FAILED
915
-    */
903
+    /**
904
+     * Saves the specified data to a file, JSON encoded.
905
+     * 
906
+     * @param mixed $data
907
+     * @param string $file
908
+     * @param bool $pretty
909
+     * @throws FileHelper_Exception
910
+     * 
911
+     * @see FileHelper::ERROR_JSON_ENCODE_ERROR
912
+     * @see FileHelper::ERROR_SAVE_FOLDER_NOT_WRITABLE
913
+     * @see FileHelper::ERROR_SAVE_FILE_NOT_WRITABLE
914
+     * @see FileHelper::ERROR_SAVE_FILE_WRITE_FAILED
915
+     */
916 916
     public static function saveAsJSON($data, string $file, bool $pretty=false)
917 917
     {
918 918
         $options = null;
@@ -936,18 +936,18 @@  discard block
 block discarded – undo
936 936
         self::saveFile($file, $json);
937 937
     }
938 938
    
939
-   /**
940
-    * Saves the specified content to the target file, creating
941
-    * the file and the folder as necessary.
942
-    * 
943
-    * @param string $filePath
944
-    * @param string $content
945
-    * @throws FileHelper_Exception
946
-    * 
947
-    * @see FileHelper::ERROR_SAVE_FOLDER_NOT_WRITABLE
948
-    * @see FileHelper::ERROR_SAVE_FILE_NOT_WRITABLE
949
-    * @see FileHelper::ERROR_SAVE_FILE_WRITE_FAILED
950
-    */
939
+    /**
940
+     * Saves the specified content to the target file, creating
941
+     * the file and the folder as necessary.
942
+     * 
943
+     * @param string $filePath
944
+     * @param string $content
945
+     * @throws FileHelper_Exception
946
+     * 
947
+     * @see FileHelper::ERROR_SAVE_FOLDER_NOT_WRITABLE
948
+     * @see FileHelper::ERROR_SAVE_FILE_NOT_WRITABLE
949
+     * @see FileHelper::ERROR_SAVE_FILE_WRITE_FAILED
950
+     */
951 951
     public static function saveFile(string $filePath, string $content='') : void
952 952
     {
953 953
         // target file already exists
@@ -1000,12 +1000,12 @@  discard block
 block discarded – undo
1000 1000
         );
1001 1001
     }
1002 1002
     
1003
-   /**
1004
-    * Checks whether it is possible to run PHP command 
1005
-    * line commands.
1006
-    * 
1007
-    * @return boolean
1008
-    */
1003
+    /**
1004
+     * Checks whether it is possible to run PHP command 
1005
+     * line commands.
1006
+     * 
1007
+     * @return boolean
1008
+     */
1009 1009
     public static function canMakePHPCalls() : bool
1010 1010
     {
1011 1011
         return self::cliCommandExists('php');
@@ -1082,16 +1082,16 @@  discard block
 block discarded – undo
1082 1082
         return $result;
1083 1083
     }
1084 1084
     
1085
-   /**
1086
-    * Validates a PHP file's syntax.
1087
-    * 
1088
-    * NOTE: This will fail silently if the PHP command line
1089
-    * is not available. Use {@link FileHelper::canMakePHPCalls()}
1090
-    * to check this beforehand as needed.
1091
-    * 
1092
-    * @param string $path
1093
-    * @return boolean|array A boolean true if the file is valid, an array with validation messages otherwise.
1094
-    */
1085
+    /**
1086
+     * Validates a PHP file's syntax.
1087
+     * 
1088
+     * NOTE: This will fail silently if the PHP command line
1089
+     * is not available. Use {@link FileHelper::canMakePHPCalls()}
1090
+     * to check this beforehand as needed.
1091
+     * 
1092
+     * @param string $path
1093
+     * @return boolean|array A boolean true if the file is valid, an array with validation messages otherwise.
1094
+     */
1095 1095
     public static function checkPHPFileSyntax($path)
1096 1096
     {
1097 1097
         if(!self::canMakePHPCalls()) {
@@ -1115,14 +1115,14 @@  discard block
 block discarded – undo
1115 1115
         return $output;
1116 1116
     }
1117 1117
     
1118
-   /**
1119
-    * Retrieves the last modified date for the specified file or folder.
1120
-    * 
1121
-    * Note: If the target does not exist, returns null. 
1122
-    * 
1123
-    * @param string $path
1124
-    * @return \DateTime|NULL
1125
-    */
1118
+    /**
1119
+     * Retrieves the last modified date for the specified file or folder.
1120
+     * 
1121
+     * Note: If the target does not exist, returns null. 
1122
+     * 
1123
+     * @param string $path
1124
+     * @return \DateTime|NULL
1125
+     */
1126 1126
     public static function getModifiedDate($path)
1127 1127
     {
1128 1128
         $time = filemtime($path);
@@ -1135,24 +1135,24 @@  discard block
 block discarded – undo
1135 1135
         return null; 
1136 1136
     }
1137 1137
     
1138
-   /**
1139
-    * Retrieves the names of all subfolders in the specified path.
1140
-    * 
1141
-    * Available options:
1142
-    * 
1143
-    * - recursive: true/false
1144
-    *   Whether to search for subfolders recursively. 
1145
-    *   
1146
-    * - absolute-paths: true/false
1147
-    *   Whether to return a list of absolute paths.
1148
-    * 
1149
-    * @param string $targetFolder
1150
-    * @param array $options
1151
-    * @throws FileHelper_Exception
1152
-    * @return string[]
1153
-    * 
1154
-    * @todo Move this to a separate class.
1155
-    */
1138
+    /**
1139
+     * Retrieves the names of all subfolders in the specified path.
1140
+     * 
1141
+     * Available options:
1142
+     * 
1143
+     * - recursive: true/false
1144
+     *   Whether to search for subfolders recursively. 
1145
+     *   
1146
+     * - absolute-paths: true/false
1147
+     *   Whether to return a list of absolute paths.
1148
+     * 
1149
+     * @param string $targetFolder
1150
+     * @param array $options
1151
+     * @throws FileHelper_Exception
1152
+     * @return string[]
1153
+     * 
1154
+     * @todo Move this to a separate class.
1155
+     */
1156 1156
     public static function getSubfolders($targetFolder, $options = array())
1157 1157
     {
1158 1158
         if(!is_dir($targetFolder)) 
@@ -1213,16 +1213,16 @@  discard block
 block discarded – undo
1213 1213
         return $result;
1214 1214
     }
1215 1215
 
1216
-   /**
1217
-    * Retrieves the maximum allowed upload file size, in bytes.
1218
-    * Takes into account the PHP ini settings <code>post_max_size</code>
1219
-    * and <code>upload_max_filesize</code>. Since these cannot
1220
-    * be modified at runtime, they are the hard limits for uploads.
1221
-    * 
1222
-    * NOTE: Based on binary values, where 1KB = 1024 Bytes.
1223
-    * 
1224
-    * @return int Will return <code>-1</code> if no limit.
1225
-    */
1216
+    /**
1217
+     * Retrieves the maximum allowed upload file size, in bytes.
1218
+     * Takes into account the PHP ini settings <code>post_max_size</code>
1219
+     * and <code>upload_max_filesize</code>. Since these cannot
1220
+     * be modified at runtime, they are the hard limits for uploads.
1221
+     * 
1222
+     * NOTE: Based on binary values, where 1KB = 1024 Bytes.
1223
+     * 
1224
+     * @return int Will return <code>-1</code> if no limit.
1225
+     */
1226 1226
     public static function getMaxUploadFilesize() : int
1227 1227
     {
1228 1228
         static $max_size = -1;
@@ -1259,16 +1259,16 @@  discard block
 block discarded – undo
1259 1259
         return round($size);
1260 1260
     }
1261 1261
    
1262
-   /**
1263
-    * Makes a path relative using a folder depth: will reduce the
1264
-    * length of the path so that only the amount of folders defined
1265
-    * in the <code>$depth</code> attribute are shown below the actual
1266
-    * folder or file in the path.
1267
-    *  
1268
-    * @param string  $path The absolute or relative path
1269
-    * @param int $depth The folder depth to reduce the path to
1270
-    * @return string
1271
-    */
1262
+    /**
1263
+     * Makes a path relative using a folder depth: will reduce the
1264
+     * length of the path so that only the amount of folders defined
1265
+     * in the <code>$depth</code> attribute are shown below the actual
1266
+     * folder or file in the path.
1267
+     *  
1268
+     * @param string  $path The absolute or relative path
1269
+     * @param int $depth The folder depth to reduce the path to
1270
+     * @return string
1271
+     */
1272 1272
     public static function relativizePathByDepth(string $path, int $depth=2) : string
1273 1273
     {
1274 1274
         $path = self::normalizePath($path);
@@ -1306,23 +1306,23 @@  discard block
 block discarded – undo
1306 1306
         return trim(implode('/', $tokens), '/');
1307 1307
     }
1308 1308
     
1309
-   /**
1310
-    * Makes the specified path relative to another path,
1311
-    * by removing one from the other if found. Also 
1312
-    * normalizes the path to use forward slashes. 
1313
-    * 
1314
-    * Example:
1315
-    * 
1316
-    * <pre>
1317
-    * relativizePath('c:\some\folder\to\file.txt', 'c:\some\folder');
1318
-    * </pre>
1319
-    * 
1320
-    * Result: <code>to/file.txt</code>
1321
-    * 
1322
-    * @param string $path
1323
-    * @param string $relativeTo
1324
-    * @return string
1325
-    */
1309
+    /**
1310
+     * Makes the specified path relative to another path,
1311
+     * by removing one from the other if found. Also 
1312
+     * normalizes the path to use forward slashes. 
1313
+     * 
1314
+     * Example:
1315
+     * 
1316
+     * <pre>
1317
+     * relativizePath('c:\some\folder\to\file.txt', 'c:\some\folder');
1318
+     * </pre>
1319
+     * 
1320
+     * Result: <code>to/file.txt</code>
1321
+     * 
1322
+     * @param string $path
1323
+     * @param string $relativeTo
1324
+     * @return string
1325
+     */
1326 1326
     public static function relativizePath(string $path, string $relativeTo) : string
1327 1327
     {
1328 1328
         $path = self::normalizePath($path);
@@ -1334,17 +1334,17 @@  discard block
 block discarded – undo
1334 1334
         return $relative;
1335 1335
     }
1336 1336
     
1337
-   /**
1338
-    * Checks that the target file exists, and throws an exception
1339
-    * if it does not. 
1340
-    * 
1341
-    * @param string $path
1342
-    * @param int|NULL $errorCode Optional custom error code
1343
-    * @throws FileHelper_Exception
1344
-    * @return string The real path to the file
1345
-    * 
1346
-    * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
1347
-    */
1337
+    /**
1338
+     * Checks that the target file exists, and throws an exception
1339
+     * if it does not. 
1340
+     * 
1341
+     * @param string $path
1342
+     * @param int|NULL $errorCode Optional custom error code
1343
+     * @throws FileHelper_Exception
1344
+     * @return string The real path to the file
1345
+     * 
1346
+     * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
1347
+     */
1348 1348
     public static function requireFileExists(string $path, $errorCode=null) : string
1349 1349
     {
1350 1350
         $result = realpath($path);
@@ -1363,18 +1363,18 @@  discard block
 block discarded – undo
1363 1363
         );
1364 1364
     }
1365 1365
     
1366
-   /**
1367
-    * Reads a specific line number from the target file and returns its
1368
-    * contents, if the file has such a line. Does so with little memory
1369
-    * usage, as the file is not read entirely into memory.
1370
-    * 
1371
-    * @param string $path
1372
-    * @param int $lineNumber Note: 1-based; the first line is number 1.
1373
-    * @return string|NULL Will return null if the requested line does not exist.
1374
-    * @throws FileHelper_Exception
1375
-    * 
1376
-    * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
1377
-    */
1366
+    /**
1367
+     * Reads a specific line number from the target file and returns its
1368
+     * contents, if the file has such a line. Does so with little memory
1369
+     * usage, as the file is not read entirely into memory.
1370
+     * 
1371
+     * @param string $path
1372
+     * @param int $lineNumber Note: 1-based; the first line is number 1.
1373
+     * @return string|NULL Will return null if the requested line does not exist.
1374
+     * @throws FileHelper_Exception
1375
+     * 
1376
+     * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
1377
+     */
1378 1378
     public static function getLineFromFile(string $path, int $lineNumber) : ?string
1379 1379
     {
1380 1380
         self::requireFileExists($path);
@@ -1390,19 +1390,19 @@  discard block
 block discarded – undo
1390 1390
         $file->seek($targetLine);
1391 1391
         
1392 1392
         if($file->key() !== $targetLine) {
1393
-             return null;
1393
+                return null;
1394 1394
         }
1395 1395
         
1396 1396
         return $file->current(); 
1397 1397
     }
1398 1398
     
1399
-   /**
1400
-    * Retrieves the total amount of lines in the file, without 
1401
-    * reading the whole file into memory.
1402
-    * 
1403
-    * @param string $path
1404
-    * @return int
1405
-    */
1399
+    /**
1400
+     * Retrieves the total amount of lines in the file, without 
1401
+     * reading the whole file into memory.
1402
+     * 
1403
+     * @param string $path
1404
+     * @return int
1405
+     */
1406 1406
     public static function countFileLines(string $path) : int
1407 1407
     {
1408 1408
         self::requireFileExists($path);
@@ -1432,26 +1432,26 @@  discard block
 block discarded – undo
1432 1432
         return $number+1;
1433 1433
     }
1434 1434
     
1435
-   /**
1436
-    * Parses the target file to detect any PHP classes contained
1437
-    * within, and retrieve information on them. Does not use the 
1438
-    * PHP reflection API.
1439
-    * 
1440
-    * @param string $filePath
1441
-    * @return FileHelper_PHPClassInfo
1442
-    */
1435
+    /**
1436
+     * Parses the target file to detect any PHP classes contained
1437
+     * within, and retrieve information on them. Does not use the 
1438
+     * PHP reflection API.
1439
+     * 
1440
+     * @param string $filePath
1441
+     * @return FileHelper_PHPClassInfo
1442
+     */
1443 1443
     public static function findPHPClasses(string $filePath) : FileHelper_PHPClassInfo
1444 1444
     {
1445 1445
         return new FileHelper_PHPClassInfo($filePath);
1446 1446
     }
1447 1447
     
1448
-   /**
1449
-    * Detects the end of line style used in the target file, if any.
1450
-    * Can be used with large files, because it only reads part of it.
1451
-    * 
1452
-    * @param string $filePath The path to the file.
1453
-    * @return NULL|ConvertHelper_EOL The end of line character information, or NULL if none is found.
1454
-    */
1448
+    /**
1449
+     * Detects the end of line style used in the target file, if any.
1450
+     * Can be used with large files, because it only reads part of it.
1451
+     * 
1452
+     * @param string $filePath The path to the file.
1453
+     * @return NULL|ConvertHelper_EOL The end of line character information, or NULL if none is found.
1454
+     */
1455 1455
     public static function detectEOLCharacter(string $filePath) : ?ConvertHelper_EOL
1456 1456
     {
1457 1457
         // 20 lines is enough to get a good picture of the newline style in the file.
@@ -1464,18 +1464,18 @@  discard block
 block discarded – undo
1464 1464
         return ConvertHelper::detectEOLCharacter($string);
1465 1465
     }
1466 1466
     
1467
-   /**
1468
-    * Reads the specified amount of lines from the target file.
1469
-    * Unicode BOM compatible: any byte order marker is stripped
1470
-    * from the resulting lines.
1471
-    * 
1472
-    * @param string $filePath
1473
-    * @param int $amount Set to 0 to read all lines.
1474
-    * @return array
1475
-    * 
1476
-    * @see FileHelper::ERROR_CANNOT_OPEN_FILE_TO_READ_LINES
1477
-    * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
1478
-    */
1467
+    /**
1468
+     * Reads the specified amount of lines from the target file.
1469
+     * Unicode BOM compatible: any byte order marker is stripped
1470
+     * from the resulting lines.
1471
+     * 
1472
+     * @param string $filePath
1473
+     * @param int $amount Set to 0 to read all lines.
1474
+     * @return array
1475
+     * 
1476
+     * @see FileHelper::ERROR_CANNOT_OPEN_FILE_TO_READ_LINES
1477
+     * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
1478
+     */
1479 1479
     public static function readLines(string $filePath, int $amount=0) : array
1480 1480
     {
1481 1481
         self::requireFileExists($filePath);
@@ -1526,16 +1526,16 @@  discard block
 block discarded – undo
1526 1526
         return $result;
1527 1527
     }
1528 1528
     
1529
-   /**
1530
-    * Reads all content from a file.
1531
-    * 
1532
-    * @param string $filePath
1533
-    * @throws FileHelper_Exception
1534
-    * @return string
1535
-    * 
1536
-    * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
1537
-    * @see FileHelper::ERROR_CANNOT_READ_FILE_CONTENTS
1538
-    */
1529
+    /**
1530
+     * Reads all content from a file.
1531
+     * 
1532
+     * @param string $filePath
1533
+     * @throws FileHelper_Exception
1534
+     * @return string
1535
+     * 
1536
+     * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST
1537
+     * @see FileHelper::ERROR_CANNOT_READ_FILE_CONTENTS
1538
+     */
1539 1539
     public static function readContents(string $filePath) : string
1540 1540
     {
1541 1541
         self::requireFileExists($filePath);
Please login to merge, or discard this patch.