@@ -26,18 +26,19 @@ discard block |
||
26 | 26 | $out = []; |
27 | 27 | foreach ($this->data as $key => $row) { |
28 | 28 | |
29 | - if (!$row) |
|
30 | - continue; |
|
29 | + if (!$row) { |
|
30 | + continue; |
|
31 | + } |
|
31 | 32 | |
32 | 33 | $newIndexes = call_user_func($indexGenerator, $key, $row); |
33 | - if (!is_array($newIndexes)) |
|
34 | - $newIndexes = [$newIndexes]; |
|
34 | + if (!is_array($newIndexes)) { |
|
35 | + $newIndexes = [$newIndexes]; |
|
36 | + } |
|
35 | 37 | |
36 | 38 | foreach ($newIndexes as $newIndex) { |
37 | 39 | if (!isset($out[$newIndex])) { |
38 | 40 | $out[$newIndex] = $row; |
39 | - } |
|
40 | - else { |
|
41 | + } else { |
|
41 | 42 | if ($conflictResolver === null) { |
42 | 43 | self::throwUsageException( |
43 | 44 | "A 'group by' provoking a conflict" |
@@ -74,20 +75,21 @@ discard block |
||
74 | 75 | $out = []; |
75 | 76 | foreach ($this->data as $key => $row) { |
76 | 77 | |
77 | - if (!$row) |
|
78 | - continue; |
|
78 | + if (!$row) { |
|
79 | + continue; |
|
80 | + } |
|
79 | 81 | |
80 | 82 | $new_keys = call_user_func($indexGenerator, $row, $key); |
81 | - if (!is_array($new_keys)) |
|
82 | - $new_keys = [$new_keys]; |
|
83 | + if (!is_array($new_keys)) { |
|
84 | + $new_keys = [$new_keys]; |
|
85 | + } |
|
83 | 86 | |
84 | 87 | foreach ($new_keys as $new_key) { |
85 | 88 | if (!isset($out[ $new_key ])) { |
86 | 89 | $out[ $new_key ] = [ |
87 | 90 | $key => $row |
88 | 91 | ]; |
89 | - } |
|
90 | - else { |
|
92 | + } else { |
|
91 | 93 | $out[ $new_key ][ $key ] = $row; |
92 | 94 | } |
93 | 95 | } |
@@ -147,8 +149,7 @@ discard block |
||
147 | 149 | $column, |
148 | 150 | ] |
149 | 151 | ); |
150 | - } |
|
151 | - else { |
|
152 | + } else { |
|
152 | 153 | // same reslution as array_merge_recursive |
153 | 154 | if (!is_array($existing_value)) { |
154 | 155 | $existing_row[$column] = [$existing_value]; |
@@ -179,8 +180,9 @@ discard block |
||
179 | 180 | $conflict_row, |
180 | 181 | function ($existing_value, $conflict_value, $column) { |
181 | 182 | |
182 | - if (!is_array($existing_value)) |
|
183 | - $existing_value = [$existing_value]; |
|
183 | + if (!is_array($existing_value)) { |
|
184 | + $existing_value = [$existing_value]; |
|
185 | + } |
|
184 | 186 | |
185 | 187 | // We store the new value with their previous ones |
186 | 188 | if ( ! is_array($conflict_value)) { |
@@ -207,15 +209,18 @@ discard block |
||
207 | 209 | public static function keepUniqueColumnValues(array $row, array $excluded_columns=[]) |
208 | 210 | { |
209 | 211 | foreach ($row as $column => &$values) { |
210 | - if (!is_array($values)) |
|
211 | - continue; |
|
212 | + if (!is_array($values)) { |
|
213 | + continue; |
|
214 | + } |
|
212 | 215 | |
213 | - if (in_array($column, $excluded_columns)) |
|
214 | - continue; |
|
216 | + if (in_array($column, $excluded_columns)) { |
|
217 | + continue; |
|
218 | + } |
|
215 | 219 | |
216 | 220 | $values = array_unique($values); |
217 | - if (count($values) == 1) |
|
218 | - $values = $values[0]; |
|
221 | + if (count($values) == 1) { |
|
222 | + $values = $values[0]; |
|
223 | + } |
|
219 | 224 | } |
220 | 225 | |
221 | 226 | return $row; |
@@ -250,8 +255,9 @@ discard block |
||
250 | 255 | $out = []; |
251 | 256 | foreach ($this->data as $key => $row) { |
252 | 257 | |
253 | - if (!$row) |
|
254 | - continue; |
|
258 | + if (!$row) { |
|
259 | + continue; |
|
260 | + } |
|
255 | 261 | |
256 | 262 | $newIndex = call_user_func($indexGenerator, $key, $row); |
257 | 263 | |
@@ -261,8 +267,7 @@ discard block |
||
261 | 267 | |
262 | 268 | if (!isset($out[$newIndex])) { |
263 | 269 | $out[$newIndex] = $transformedRow; |
264 | - } |
|
265 | - else { |
|
270 | + } else { |
|
266 | 271 | $out[$newIndex] = call_user_func( |
267 | 272 | $conflictResolver, |
268 | 273 | $newIndex, |
@@ -286,8 +291,9 @@ discard block |
||
286 | 291 | */ |
287 | 292 | public function mergeWith( $otherTable, callable $conflictResolver=null ) |
288 | 293 | { |
289 | - if (is_array($otherTable)) |
|
290 | - $otherTable = new static($otherTable); |
|
294 | + if (is_array($otherTable)) { |
|
295 | + $otherTable = new static($otherTable); |
|
296 | + } |
|
291 | 297 | |
292 | 298 | if (!$otherTable instanceof static) { |
293 | 299 | self::throwUsageException( |
@@ -301,10 +307,10 @@ discard block |
||
301 | 307 | |
302 | 308 | if (!isset($out[$key])) { |
303 | 309 | $out[$key] = $row; |
304 | - } |
|
305 | - else { |
|
306 | - if ($conflictResolver === null) |
|
307 | - self::throwUsageException('No conflict resolver for a merge provoking one'); |
|
310 | + } else { |
|
311 | + if ($conflictResolver === null) { |
|
312 | + self::throwUsageException('No conflict resolver for a merge provoking one'); |
|
313 | + } |
|
308 | 314 | |
309 | 315 | $arguments = [ |
310 | 316 | &$key, |
@@ -390,8 +396,7 @@ discard block |
||
390 | 396 | $row[$new_name] = $row[$old_name]; |
391 | 397 | unset($row[$old_name]); |
392 | 398 | } |
393 | - } |
|
394 | - catch (\Exception $e) { |
|
399 | + } catch (\Exception $e) { |
|
395 | 400 | self::throwUsageException( $e->getMessage() ); |
396 | 401 | } |
397 | 402 | |
@@ -412,17 +417,19 @@ discard block |
||
412 | 417 | public function limit() |
413 | 418 | { |
414 | 419 | $arguments = func_get_args(); |
415 | - if (count($arguments) == 1 && is_numeric($arguments[0])) |
|
416 | - $max = $arguments[0]; |
|
417 | - else |
|
418 | - self::throwUsageException("Bad arguments type and count for limit()"); |
|
420 | + if (count($arguments) == 1 && is_numeric($arguments[0])) { |
|
421 | + $max = $arguments[0]; |
|
422 | + } else { |
|
423 | + self::throwUsageException("Bad arguments type and count for limit()"); |
|
424 | + } |
|
419 | 425 | |
420 | 426 | $out = []; |
421 | 427 | $count = 0; |
422 | 428 | foreach ($this->data as $key => $row) { |
423 | 429 | |
424 | - if ($max <= $count) |
|
425 | - break; |
|
430 | + if ($max <= $count) { |
|
431 | + break; |
|
432 | + } |
|
426 | 433 | |
427 | 434 | $out[$key] = $row; |
428 | 435 | |
@@ -446,8 +453,9 @@ discard block |
||
446 | 453 | */ |
447 | 454 | public function append($new_rows, callable $conflict_resolver=null) |
448 | 455 | { |
449 | - if ($new_rows instanceof static) |
|
450 | - $new_rows = $new_rows->getArray(); |
|
456 | + if ($new_rows instanceof static) { |
|
457 | + $new_rows = $new_rows->getArray(); |
|
458 | + } |
|
451 | 459 | |
452 | 460 | if (!is_array($new_rows)) { |
453 | 461 | $this->throwUsageException( |
@@ -472,8 +480,7 @@ discard block |
||
472 | 480 | ]; |
473 | 481 | |
474 | 482 | call_user_func_array($conflict_resolver, $arguments); |
475 | - } |
|
476 | - else { |
|
483 | + } else { |
|
477 | 484 | $this->data[$key] = $new_row; |
478 | 485 | } |
479 | 486 | } |
@@ -583,8 +590,7 @@ discard block |
||
583 | 590 | foreach ($rows as $row_id => $joined_row) { |
584 | 591 | $out[$row_id] = $joined_row; |
585 | 592 | } |
586 | - } |
|
587 | - else { |
|
593 | + } else { |
|
588 | 594 | |
589 | 595 | if (!isset($rows)) { |
590 | 596 | echo json_encode([ |
@@ -594,8 +600,9 @@ discard block |
||
594 | 600 | exit; |
595 | 601 | } |
596 | 602 | |
597 | - foreach ($rowIdParts as $rowIdPartName => $rowIdPartValue) |
|
598 | - $row[$rowIdPartName] = $rowIdPartValue; |
|
603 | + foreach ($rowIdParts as $rowIdPartName => $rowIdPartValue) { |
|
604 | + $row[$rowIdPartName] = $rowIdPartValue; |
|
605 | + } |
|
599 | 606 | |
600 | 607 | $indexParts = []; |
601 | 608 | foreach ($rowIdParts as $name => $value) { |
@@ -646,8 +653,7 @@ discard block |
||
646 | 653 | if (is_string($value) && array_key_exists($value, $row)) { |
647 | 654 | $part_name .= $value; |
648 | 655 | $group_value = $row[ $value ]; |
649 | - } |
|
650 | - elseif (is_callable($value)) { |
|
656 | + } elseif (is_callable($value)) { |
|
651 | 657 | |
652 | 658 | if (is_string($value)) { |
653 | 659 | $part_name .= $value; |
@@ -656,20 +662,17 @@ discard block |
||
656 | 662 | elseif (is_object($value) && ($value instanceof Closure)) { |
657 | 663 | $part_name .= 'unnamed-closure-' |
658 | 664 | . hash('crc32b', var_export($value, true)); |
659 | - } |
|
660 | - elseif (is_array($value)) { |
|
665 | + } elseif (is_array($value)) { |
|
661 | 666 | $part_name .= implode('::', $value); |
662 | 667 | } |
663 | 668 | |
664 | 669 | $group_value = call_user_func_array($value, [ |
665 | 670 | $row, &$part_name |
666 | 671 | ]); |
667 | - } |
|
668 | - elseif (is_int($value)) { |
|
672 | + } elseif (is_int($value)) { |
|
669 | 673 | $part_name .= $value ? : '0'; |
670 | 674 | $group_value = $row[ $value ]; |
671 | - } |
|
672 | - else { |
|
675 | + } else { |
|
673 | 676 | self::throwUsageException( |
674 | 677 | 'Bad value provided for groupBy id generation: ' |
675 | 678 | .var_export($value, true) |
@@ -677,8 +680,9 @@ discard block |
||
677 | 680 | ); |
678 | 681 | } |
679 | 682 | |
680 | - if (!is_null($part_name)) |
|
681 | - $group_parts[ $part_name ] = $group_value; |
|
683 | + if (!is_null($part_name)) { |
|
684 | + $group_parts[ $part_name ] = $group_value; |
|
685 | + } |
|
682 | 686 | } |
683 | 687 | |
684 | 688 | // sort the groups by names (without it the same group could have multiple ids) |
@@ -699,12 +703,12 @@ discard block |
||
699 | 703 | public function first($strict=false) |
700 | 704 | { |
701 | 705 | if (!$this->count()) { |
702 | - if ($strict) |
|
703 | - throw new \ErrorException("No first element found in this array"); |
|
704 | - else |
|
705 | - $first = null; |
|
706 | - } |
|
707 | - else { |
|
706 | + if ($strict) { |
|
707 | + throw new \ErrorException("No first element found in this array"); |
|
708 | + } else { |
|
709 | + $first = null; |
|
710 | + } |
|
711 | + } else { |
|
708 | 712 | $key = key($this->data); |
709 | 713 | $first = reset($this->data); |
710 | 714 | $this->move($key); |
@@ -721,12 +725,12 @@ discard block |
||
721 | 725 | public function last($strict=false) |
722 | 726 | { |
723 | 727 | if (!$this->count()) { |
724 | - if ($strict) |
|
725 | - throw new \ErrorException("No last element found in this array"); |
|
726 | - else |
|
727 | - $last = null; |
|
728 | - } |
|
729 | - else { |
|
728 | + if ($strict) { |
|
729 | + throw new \ErrorException("No last element found in this array"); |
|
730 | + } else { |
|
731 | + $last = null; |
|
732 | + } |
|
733 | + } else { |
|
730 | 734 | $key = key($this->data); |
731 | 735 | $last = end($this->data); |
732 | 736 | $this->move($key); |
@@ -741,12 +745,12 @@ discard block |
||
741 | 745 | public function firstKey($strict=false) |
742 | 746 | { |
743 | 747 | if (!$this->count()) { |
744 | - if ($strict) |
|
745 | - throw new \ErrorException("No last element found in this array"); |
|
746 | - else |
|
747 | - $firstKey = null; |
|
748 | - } |
|
749 | - else { |
|
748 | + if ($strict) { |
|
749 | + throw new \ErrorException("No last element found in this array"); |
|
750 | + } else { |
|
751 | + $firstKey = null; |
|
752 | + } |
|
753 | + } else { |
|
750 | 754 | $key = key($this->data); |
751 | 755 | reset($this->data); |
752 | 756 | $firstKey = key($this->data); |
@@ -762,12 +766,12 @@ discard block |
||
762 | 766 | public function lastKey($strict=false) |
763 | 767 | { |
764 | 768 | if (!$this->count()) { |
765 | - if ($strict) |
|
766 | - throw new \ErrorException("No last element found in this array"); |
|
767 | - else |
|
768 | - $lastKey = null; |
|
769 | - } |
|
770 | - else { |
|
769 | + if ($strict) { |
|
770 | + throw new \ErrorException("No last element found in this array"); |
|
771 | + } else { |
|
772 | + $lastKey = null; |
|
773 | + } |
|
774 | + } else { |
|
771 | 775 | $key = key($this->data); |
772 | 776 | end($this->data); |
773 | 777 | $lastKey = key($this->data); |
@@ -789,8 +793,7 @@ discard block |
||
789 | 793 | break; |
790 | 794 | } |
791 | 795 | } |
792 | - } |
|
793 | - elseif ($strict) { |
|
796 | + } elseif ($strict) { |
|
794 | 797 | throw new \ErrorException("Unable to move the internal pointer to a key that doesn't exist."); |
795 | 798 | } |
796 | 799 | |
@@ -857,8 +860,9 @@ discard block |
||
857 | 860 | 'data' => $this->data, |
858 | 861 | ]); |
859 | 862 | |
860 | - if ($exit) |
|
861 | - exit; |
|
863 | + if ($exit) { |
|
864 | + exit; |
|
865 | + } |
|
862 | 866 | |
863 | 867 | return $this; |
864 | 868 | } |