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