public function custom_result_object($class_name)
{
if (isset($this->custom_result_object[$class_name])) {
return $this->custom_result_object[$class_name];
} elseif (!$this->result_id or $this->num_rows === 0) {
return array();
}
// Don't fetch the result set again if we already have it
$_data = NULL;
if (($c = count($this->result_array)) > 0) {
$_data = 'result_array';
} elseif (($c = count($this->result_object)) > 0) {
$_data = 'result_object';
}
if ($_data !== NULL) {
for ($i = 0; $i < $c; $i++) {
$this->custom_result_object[$class_name][$i] = new $class_name();
foreach ($this->{$_data}[$i] as $key => $value) {
$this->custom_result_object[$class_name][$i]->{$key} = $value;
}
}
return $this->custom_result_object[$class_name];
}
is_null($this->row_data) or $this->data_seek(0);
$this->custom_result_object[$class_name] = array();
while ($row = $this->_fetch_object($class_name)) {
$this->custom_result_object[$class_name][] = $row;
}
return $this->custom_result_object[$class_name];
}