@@ -31,35 +31,37 @@ function sortingFirstFile(mixed $tree1, mixed $tree2): mixed
31
31
return array_reduce (
32
32
array_keys ($ tree1 ),
33
33
function ($ acc , $ key ) use ($ tree1 , $ tree2 ) {
34
- $ diff = [...$ acc ];
35
-
36
34
if (!array_key_exists ($ key , $ tree2 )) {
37
- $ status [$ key ]['status ' ] = 'remove ' ;
38
- $ diff = array_merge ($ diff , $ status );
35
+ $ status = [$ key => ['status ' => 'remove ' ]];
36
+ $ acc = array_merge ($ acc , $ status );
37
+
39
38
$ innerContent = sortingFirstFile ($ tree1 [$ key ], $ tree1 [$ key ]);
40
- $ diff [$ key ]['value ' ] = $ innerContent ;
41
- return $ diff ;
39
+ $ acc [$ key ]['value ' ] = $ innerContent ;
40
+ return $ acc ;
42
41
}
43
42
44
43
if ($ tree1 [$ key ] === $ tree2 [$ key ]) {
45
- $ status [$ key ]['status ' ] = 'unchanged ' ;
46
- $ diff = array_merge ($ diff , $ status );
47
- $ diff [$ key ]['value ' ] = sortingFirstFile ($ tree1 [$ key ], $ tree1 [$ key ]);
48
- return $ diff ;
44
+ $ status = [$ key => ['status ' => 'unchanged ' ]];
45
+ $ acc = array_merge ($ acc , $ status );
46
+
47
+ $ acc [$ key ]['value ' ] = sortingFirstFile ($ tree1 [$ key ], $ tree1 [$ key ]);
48
+ return $ acc ;
49
49
}
50
50
51
51
if (is_array ($ tree1 [$ key ]) && is_array ($ tree2 [$ key ])) {
52
- $ status [$ key ]['status ' ] = 'changed ' ;
53
- $ diff = array_merge ($ diff , $ status );
54
- $ diff [$ key ]['value ' ] = sortingFirstFile ($ tree1 [$ key ], $ tree2 [$ key ]);
52
+ $ status = [$ key => ['status ' => 'changed ' ]];
53
+ $ acc = array_merge ($ acc , $ status );
54
+
55
+ $ acc [$ key ]['value ' ] = sortingFirstFile ($ tree1 [$ key ], $ tree2 [$ key ]);
55
56
} else {
56
- $ status [$ key ]['status ' ] = 'remove ' ;
57
- $ diff = array_merge ($ diff , $ status );
58
- $ diff [$ key ]['beforeValue ' ] = sortingFirstFile ($ tree1 [$ key ], $ tree1 [$ key ]);
59
- $ diff [$ key ]['afterValue ' ] = sortingFirstFile ($ tree2 [$ key ], $ tree2 [$ key ]);
57
+ $ status = [$ key => ['status ' => 'remove ' ]];
58
+ $ acc = array_merge ($ acc , $ status );
59
+
60
+ $ acc [$ key ]['beforeValue ' ] = sortingFirstFile ($ tree1 [$ key ], $ tree1 [$ key ]);
61
+ $ acc [$ key ]['afterValue ' ] = sortingFirstFile ($ tree2 [$ key ], $ tree2 [$ key ]);
60
62
}
61
63
62
- return $ diff ;
64
+ return $ acc ;
63
65
},
64
66
[]
65
67
);
0 commit comments