Skip to content

Commit d993cd7

Browse files
committed
fixed issue with serilizing object
1 parent ed88b36 commit d993cd7

2 files changed

Lines changed: 13 additions & 2 deletions

File tree

src/Resource.php

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -430,6 +430,9 @@ public function strip() {
430430
}
431431

432432
public function serialize($array) {
433+
if (!is_array($array)) {
434+
$array = get_object_vars($array);
435+
}
433436
foreach ($array as $key => $val) {
434437
if (array_key_exists($key, $this->properties())) {
435438
$this->$key = $val;

tests/DBTest.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -435,9 +435,17 @@ public function testResourceReload() {
435435
public function testResourceSerialize() {
436436
$o = ClassResourceTest::q('select * from test_user limit 1')->get(0);
437437
$o->serialize([
438-
name => 'new'
438+
name => 'newarray'
439439
]);
440-
$this->assertEquals('new', $o->name);
440+
$this->assertEquals('newarray', $o->name);
441+
}
442+
443+
public function testResourceSerializeObject() {
444+
$o = ClassResourceTest::q('select * from test_user limit 1')->get(0);
445+
$o->serialize((object)[
446+
name => 'newobject'
447+
]);
448+
$this->assertEquals('newobject', $o->name);
441449
}
442450

443451
}

0 commit comments

Comments
 (0)