在Bootstrap中使用
$url = constant ( "APPLICATION_PATH" ) . DIRECTORY_SEPARATOR . 'configs' . DIRECTORY_SEPARATOR . 'application.ini';
$dbconfig = new Zend_Config_Ini ( $url, "mysql" );
// $db = Zend_Db::factory ( $dbconfig->db );
$db = Zend_Db_Table::getDefaultAdapter ();
// var_dump ( $db );
$db->query ( "set names utf8" );
// Zend_Db_Table::setDefaultAdapter ( $db );
会出现$db不能实例化的情况,其中Application.ini文件的内容如下:
[mysql]
resources.db.adatper=PDO_MYSQL
resources.db.isDefaultTableAdapter = true
resources.db.params.host=localhost
resources.db.params.username=root
resources.db.params.password=admin
resources.db.params.dbname=hsp
在这种情况下需要使用如下方法:
$db = Zend_Db::factory ( 'PDO_MYSQL', array (
'host' => 'localhost',
'username' => 'root',
'password' => 'admin',
'dbname' => 'hsp'
) );
$db->query ( "set names utf8" );
Zend_Db_Table::setDefaultAdapter ( $db );
这种方法可以正确的实例化$db。