File tree 2 files changed +17
-1
lines changed
2 files changed +17
-1
lines changed Original file line number Diff line number Diff line change @@ -14,7 +14,10 @@ public function fromObject(
14
14
$ value = $ this ->fromObject ($ value , $ dataObjectClass );
15
15
}
16
16
elseif (is_array ($ value )) {
17
- if (is_int (key ($ value ))) {
17
+ if (empty ($ value )) {
18
+ $ value = [];
19
+ }
20
+ elseif (is_int (key ($ value ))) {
18
21
array_walk ($ value , function (&$ element )use ($ dataObjectClass ) {
19
22
if (is_object ($ element )) {
20
23
$ element = $ this ->fromObject ($ element , $ dataObjectClass );
Original file line number Diff line number Diff line change @@ -193,4 +193,17 @@ public function testEmptyNestedArray():void {
193
193
self ::assertSame ("value2 " , $ output ->getString ("key2 " ));
194
194
self ::assertSame ([], $ output ->getArray ("nested " ));
195
195
}
196
+
197
+ public function testEmptyNestedArrayInObject ():void {
198
+ $ object = (object )[
199
+ "key1 " => "value1 " ,
200
+ "key2 " => "value2 " ,
201
+ "nested " => [],
202
+ ];
203
+ $ sut = new DataObjectBuilder ();
204
+ $ output = $ sut ->fromObject ($ object );
205
+
206
+ self ::assertSame ("value2 " , $ output ->getString ("key2 " ));
207
+ self ::assertSame ([], $ output ->getArray ("nested " ));
208
+ }
196
209
}
You can’t perform that action at this time.
0 commit comments