@@ -7,7 +7,11 @@ function manyToOne($many, $one, $property) {
7
7
$ result = [];
8
8
9
9
foreach ($ many as $ manyItem ):
10
- $ filter = array_filter ($ one , fn ($ item ) => $ manyItem [$ property ] == $ item ['id ' ]);
10
+
11
+ // Object Convert to Array
12
+ $ manyItem = (array ) $ manyItem ;
13
+
14
+ $ filter = array_filter ($ one , fn ($ item ) => $ manyItem [$ property ] == $ item ->id );
11
15
$ manyItem [$ property ] = [...$ filter ][0 ];
12
16
array_push ($ result , $ manyItem );
13
17
endforeach ;
@@ -21,13 +25,16 @@ function oneToMany($one, $many, $property) {
21
25
22
26
foreach ($ one as $ oneItem ):
23
27
28
+ // Object Convert to Array
29
+ $ oneItem = (array ) $ oneItem ;
30
+
24
31
if ($ oneItem [$ property ] == null ) $ oneItem [$ property ] = [];
25
32
else {
26
33
$ ids = json_decode ($ oneItem [$ property ]);
27
34
$ oneItem [$ property ] = [];
28
35
29
36
foreach ($ ids as $ id ):
30
- $ array = array_filter ($ many , fn ($ item ) => $ id == $ item[ ' id ' ] );
37
+ $ array = array_filter ($ many , fn ($ item ) => $ id == $ item-> id );
31
38
array_push ($ oneItem [$ property ], ...$ array );
32
39
endforeach ;
33
40
}
@@ -43,10 +50,10 @@ function oneWayFilter($current, $filter, $addProperty, $findProperty) {
43
50
$ result = [];
44
51
45
52
foreach ($ current as $ currentItem ):
46
- $ currentItem[ $ addProperty] = [];
53
+ $ currentItem-> $ addProperty = [];
47
54
48
- $ array = array_filter ($ filter , fn ($ item ) => $ currentItem[ ' id ' ] == $ item[ $ findProperty] );
49
- array_push ($ currentItem[ $ addProperty] , ...$ array );
55
+ $ array = array_filter ($ filter , fn ($ item ) => $ currentItem-> id == $ item-> $ findProperty );
56
+ array_push ($ currentItem-> $ addProperty , ...$ array );
50
57
array_push ($ result , $ currentItem );
51
58
endforeach ;
52
59
0 commit comments