Codeigniter:使用PDO而不是mysql

enc*_*nce 6 php pdo codeigniter

在Codeigniter实现PDO的使用之前,是否有办法将其破解为稳定且安全的 CI ?目前,而是采用了数据库驱动程序,我使用的,而不是一个模型,它有我所有的PDO这样的代码prepare,fetch,execute在这等.你们其他人在做什么?

小智 8

CodeIgniter 2.1.4+上使用MySQL数据库(编辑文件:/application/config/databases.php).

要使用PDO:

$db['default']['hostname'] = 'mysql:host=localhost';
$db['default']['dbdriver'] = 'pdo';
Run Code Online (Sandbox Code Playgroud)

使用MySQLi

$db['default']['hostname'] = 'localhost';
$db['default']['dbdriver'] = 'mysqli';
Run Code Online (Sandbox Code Playgroud)

  • 在CodeIgniter 3+中,您现在必须使用`$ db ['default'] ['hostname'] ='mysql:host = localhost; dbname = database_name';`或出现错误,指出“未选择数据库”。 (2认同)

小智 7

$active_group = 'default';
$query_builder = TRUE;

$db['default'] = array(
    'dsn'   => 'mysql:host=127.0.0.1; dbname=****yourdatabasename*****; charset=utf8;',
    'hostname' => '',
    'username' => 'root',
    'password' => '******yourpassword*******',
    'database' => '',
    'dbdriver' => 'pdo',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);
Run Code Online (Sandbox Code Playgroud)


Phi*_*lip -1

尝试php-activerecord我相信它使用了 PDO 驱动程序,它通过 Spark 实现了简单的即插即用。