zendframework配置多数据库

来源:互联网 发布:人工智能是什么意思 编辑:程序博客网 时间:2024/05/17 02:47

配置文件config.ini:

db.adapter = PDO_MYSQL
db.params.host = localhost
;db.params.host = *********
db.params.dbname = voice_sms
db.params.username = root
db.params.password =
;db.params.password = *********
db.params.charset = UTF8
db.params.profiler = true

db1.adapter = PDO_MYSQL
db1.params.host = 211.166.***.***
db1.params.dbname = voice_sms
db1.params.username = root
db1.params.password =*********
db1.params.charset = UTF8
db1.params.profiler = true


bootstrap.php文件:

<?php

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
    protected function _initAppAutoload() {
        $autoloader = new Zend_Application_Module_Autoloader(array(
                'namespace' => 'App',
                'basePath'  => dirname(__FILE__),
        ));
        return $autoloader;
    }
    
    /**
     *取得配置参数并注册数据库
     *@param $db 数据库对象
     */
    protected function _initDatabase() {
        $options = $this->getApplication()->getOptions();
        
        $db1 = Zend_Db::factory( $options[ 'db1' ][ 'adapter' ], $options[ 'db1' ][ 'params' ] );
        Zend_Registry::set( 'DB1', $db1 );
        
//        Zend_Debug::dump($options['resources'], $label=null, $echo=true);exit;
        $db = Zend_Db::factory( $options[ 'db' ][ 'adapter' ], $options[ 'db' ][ 'params' ] );
        Zend_Db_Table_Abstract::setDefaultAdapter( $db );
        Zend_Registry::set( 'DB', $db );
        return $db;
    }
    
}

?>

model层testmysql.php文件:

<?php

/**
 * select ,insert ,update logo information
 * @author  yan li
 * @date    2013-11-26
 */

class Model_testmysql
{
    private $_tableName;
    private $_connect;
    
    /**
     * construct function
     */
    public function __construct() {
        $this->_tableName = 'userlogo';
        $this->_connect= Zend_Registry::get( 'DB1' );
    }
    
    public function test() {
        $select = $this->_connect->select();
        $select->from($this->_tableName);
        $sql = $select->__toString();
        $result = $this->_connect->fetchAll($sql);
        if($result){
            return $result;
        }
        echo 'getdetail failed!';
        exit;
    }
 
}

?>

原创粉丝点击