From 97cafbf128f4fd6e9406610d53a8afb68b9e9e90 Mon Sep 17 00:00:00 2001 From: Alex Cabal Date: Wed, 1 May 2024 09:08:10 -0500 Subject: [PATCH] Allow for an object's own FromRow method in DbConnection --- lib/DbConnection.php | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/lib/DbConnection.php b/lib/DbConnection.php index 0da553f6..f2e91469 100644 --- a/lib/DbConnection.php +++ b/lib/DbConnection.php @@ -171,8 +171,15 @@ class DbConnection{ $rows = $handle->fetchAll(\PDO::FETCH_NUM); + $useObjectFillMethod = method_exists($class, 'FromRow'); + foreach($rows as $row){ - $object = new $class(); + if($useObjectFillMethod){ + $object = new stdClass(); + } + else{ + $object = new $class(); + } for($i = 0; $i < $handle->columnCount(); $i++){ if($metadata[$i] === false){ @@ -246,7 +253,12 @@ class DbConnection{ } } - $result[] = $object; + if($useObjectFillMethod){ + $result[] = $class::FromRow($object); + } + else{ + $result[] = $object; + } } } catch(\PDOException $ex){