本文較為詳細的講述了ThinkPHP連接數據庫及主從數據庫的設置方法,在ThinkPHP項目開發中非常實用。具體實現方法如下:
一、項目根目錄上建立config.php
代碼如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<?php if (!defined( 'THINK_PATH' )) exit (); return array ( 'DB_TYPE' => 'mysql' , // 數據庫類型 'DB_HOST' => 'localhost' , // 主機 'DB_NAME' => 'aoli' , // 數據庫名稱 'DB_USER' => 'root' , // 數據庫用戶名 'DB_PWD' => '' , // 數據庫密碼 'DB_PREFIX' => '' , // 數據表前綴 'DB_CHARSET' => 'utf8' , // 網站編碼 'DB_PORT' => '3306' , // 數據庫端口 ); ?> |
二、設置項目配置文件
\Home\Conf\config.php文件代碼如下:
1
2
3
4
5
6
7
|
<?php $arr1 = array { 'URL_MODEL' =>2, //pathinfo訪問模式 }; $arr2 = include './config.php' ; return array_merge ( $arr1 , $arr2 ); //數組整合 ?> |
\Admin\Conf\config.php文件代碼如下:
1
2
3
4
5
6
7
|
<?php $arr1 = array { 'URL_MODEL' =>1, //普通訪問模式 get方式 }; $arr2 = include './config.php' ; return array_merge ( $arr1 , $arr2 ); //數組整合 ?> |
三、主從數據庫設置
該設置比較適合高并發,高負載的大型網站
讀者可以到\ThinkPHP\Common\convention.php中查看默認的系統常量設置
config.php文件設置如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<?php return array ( //'配置項'=>'配置值' //后臺 'URL_MODE' =>0, 'DB_TYPE' => 'mysql' , 'DB_HOST' => 'localhost,192.168.1.2' , //兩臺數據庫服務器 'DB_PORT' => '3306' , 'DB_NAME' => 'thinkphptest' , //如果數據庫名相同,不用定義多個,如果不相同與服務器依次對應 'DB_USER' => 'root' , 'DB_PWD' => 'password' , //表前綴 'DB_PREFIX' => 'think_' , //接下來配置主從數據庫 'DB_DEPLOY_TYPE' =>1, //開啟分布式數據庫 'DB_RW_SEPARATE' =>ture, //讀寫分離,默認第一臺服務器為寫入服務器,其它的只讀取不寫入 ); ?> |
在某個action中讀取數據庫文件參數:
1
2
3
4
5
|
$hh =C( 'DB_HOST' ); //C可以讀取配置文件中的值 $pp =C( 'DB_PREFIX' ); $this ->assain( 'h' , $hh ); $this ->assain( 'p' , $pp ); $this ->display(); |
這個action下的tpl:
1
2
|
數據庫服務器地址:{$h} 數據庫表前綴:{$p} |
希望本文所述方法對大家的ThinkPHP程序設計能有所幫助。