我在使CodeIgniter与SQLite3一起工作时遇到了问题。SQLite3,PDO,Active Record和CodeIgniter
这里是我的database.php中CONFIGS:
$active_group = 'sqlite';
$query_builder = TRUE;
/* SQLite3 config for PDO */
$db['sqlite'] = array (
'dsn' => 'sqlite:' .FCPATH.'virtTour_original.sqlite',
'hostname' => '',
'username' => '',
'password' => '',
'dbdriver' => 'pdo',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => TRUE,
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'autoinit' => TRUE,
'stricton' => FALSE,
'failover' => array()
);
这里是我与测试控制器:
<?php if (! defined('BASEPATH')) exit('No direct script access allowed');
class Main extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->database();
}
public function index()
{
$query = $this->db->get('tblBuildings');
foreach ($query->result_array() as $row)
{
echo $row;
}
}
}
/* End of file main.php */
/* Location: ./application/controllers/main.php */
这是当我认为主要会发生什么:
ArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArrayArray
表中有19行,所以我知道这是从这个东西(因为它是回声Array
19次)。但其他呼叫似乎不起作用。 (即)echo $row['id'];
上$query
甲var_dump
生产:
对象(CI_DB_pdo_result)#16(8){[ “conn_id”] =>对象(PDO)#14(0){} [ “result_id”] => object(PDOStatement)#15(1){[“queryString”] => string(28)“SELECT * FROM”tblBuildings“”} [“result_array”] => array(0){ } [“result_object”] => array(0){} [“custom_result_object”] => array(0){} [“current_row”] => int(0) [“num_rows”] => NULL [ row_data“] => NULL}
有表中的数据,但它并没有在这里显示...