|
11 | 11 | */ |
12 | 12 | class PhpFormatter implements FormatterInterface |
13 | 13 | { |
| 14 | + /** |
| 15 | + * 2 space indentation for array formatting |
| 16 | + */ |
14 | 17 | const INDENT = ' '; |
15 | 18 |
|
16 | 19 | /** |
@@ -76,19 +79,20 @@ private function formatData($data, $comments = [], $prefix = ' ') |
76 | 79 | * @param integer $depth |
77 | 80 | * @return string |
78 | 81 | */ |
79 | | - private function varExportShort($var, $depth = 0) |
| 82 | + private function varExportShort($var, int $depth = 0): string |
80 | 83 | { |
81 | | - if (gettype($var) === 'array') { |
82 | | - $indexed = array_keys($var) === range(0, count($var) - 1); |
83 | | - $r = []; |
84 | | - foreach ($var as $key => $value) { |
85 | | - $r[] = str_repeat(self::INDENT, $depth) |
86 | | - . ($indexed ? '' : $this->varExportShort($key) . ' => ') |
87 | | - . $this->varExportShort($value, $depth + 1); |
88 | | - } |
89 | | - return sprintf("[\n%s\n%s]", implode(",\n", $r), str_repeat(self::INDENT, $depth - 1)); |
| 84 | + if (!is_array($var)) { |
| 85 | + return var_export($var, true); |
| 86 | + } |
| 87 | + |
| 88 | + $indexed = array_keys($var) === range(0, count($var) - 1); |
| 89 | + $expanded = []; |
| 90 | + foreach ($var as $key => $value) { |
| 91 | + $expanded[] = str_repeat(self::INDENT, $depth) |
| 92 | + . ($indexed ? '' : $this->varExportShort($key) . ' => ') |
| 93 | + . $this->varExportShort($value, $depth + 1); |
90 | 94 | } |
91 | 95 |
|
92 | | - return var_export($var, true); |
| 96 | + return sprintf("[\n%s\n%s]", implode(",\n", $expanded), str_repeat(self::INDENT, $depth - 1)); |
93 | 97 | } |
94 | 98 | } |
0 commit comments