Allow class name to be specified when executing queries

PDO에는 결과를 어떤 클래스로 받아올지 선택하는 기능이 있는데 (기본값 stdClass)
executeQuery()로 쿼리를 실행할 때도 이 기능을 활용할 수 있도록 개선합니다.
stdClass를 받아와서 속성들을 추출한 후 documentItem에 도로 집어넣는 등
비효율적인 부분을 추후 개선하는 데 도움이 될 것으로 예상합니다.
This commit is contained in:
Kijin Sung 2021-04-25 13:18:47 +09:00
parent 1d9033742a
commit ce5dc45326
2 changed files with 12 additions and 8 deletions

View file

@ -137,12 +137,13 @@ function getClass($module_name)
* @param array|object $args Arguments
* @param array $column_list Column list
* @param string $result_type 'auto', 'array' or 'raw'
* @param string $result_class Name of class to use instead of stdClass
* @return object Query result data
*/
function executeQuery($query_id, $args = [], $column_list = [], $result_type = 'auto')
function executeQuery($query_id, $args = [], $column_list = [], $result_type = 'auto', $result_class = 'stdClass')
{
$oDB = Rhymix\Framework\DB::getInstance();
return $oDB->executeQuery($query_id, $args, $column_list, $result_type);
return $oDB->executeQuery($query_id, $args, $column_list, $result_type, $result_class);
}
/**
@ -152,12 +153,13 @@ function executeQuery($query_id, $args = [], $column_list = [], $result_type = '
* @param string $query_id (module name.query XML file)
* @param array|object $args Arguments
* @param array $column_list Column list
* @param string $result_class Name of class to use instead of stdClass
* @return object Query result data
*/
function executeQueryArray($query_id, $args = [], $column_list = [])
function executeQueryArray($query_id, $args = [], $column_list = [], $result_class = 'stdClass')
{
$oDB = Rhymix\Framework\DB::getInstance();
return $oDB->executeQuery($query_id, $args, $column_list, 'array');
return $oDB->executeQuery($query_id, $args, $column_list, 'array', $result_class);
}
/**