thinkphp連接數(shù)據(jù)庫(kù)的方法:
創(chuàng)新互聯(lián)主營(yíng)廣西網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都app軟件開發(fā),廣西h5微信小程序開發(fā)搭建,廣西網(wǎng)站營(yíng)銷推廣歡迎廣西等地區(qū)企業(yè)咨詢
ThinkPHP內(nèi)置了抽象數(shù)據(jù)庫(kù)訪問(wèn)層,把不同的數(shù)據(jù)庫(kù)操作封裝起來(lái),只需要使用公共的Db類進(jìn)行操作,而無(wú)需針對(duì)不同的數(shù)據(jù)庫(kù)寫不同的代碼和底層實(shí)現(xiàn),Db類會(huì)自動(dòng)調(diào)用相應(yīng)的數(shù)據(jù)庫(kù)驅(qū)動(dòng)來(lái)處理。目前的數(shù)據(jù)庫(kù)包括Mysql、SqlServer、PgSQL、Sqlite、Oracle、Ibase、Mongo,也包括對(duì)PDO的支持,如果應(yīng)用需要使用數(shù)據(jù)庫(kù),必須配置數(shù)據(jù)庫(kù)連接信息,數(shù)據(jù)庫(kù)的配置文件有多種定義方式。
常用的配置方式是在項(xiàng)目配置文件中添加下面的參數(shù):
?php
//項(xiàng)目配置文件
return array(
//數(shù)據(jù)庫(kù)配置信息
'DB_TYPE' = 'mysql', // 數(shù)據(jù)庫(kù)類型
'DB_HOST' = 'localhost', // 服務(wù)器地址
'DB_NAME' = 'thinkphp', // 數(shù)據(jù)庫(kù)名
'DB_USER' = 'root', // 用戶名
'DB_PWD' = '', // 密碼
'DB_PORT' = 3306, // 端口
'DB_PREFIX' = 'think_', // 數(shù)據(jù)庫(kù)表前綴
//其他項(xiàng)目配置參數(shù)
// ...
);
需要注意的是,ThinkPHP的數(shù)據(jù)庫(kù)連接的惰性的,所以并不是在實(shí)例化的時(shí)候就連接數(shù)據(jù)庫(kù),而是在有實(shí)際的數(shù)據(jù)操作的時(shí)候才會(huì)去連接數(shù)據(jù)庫(kù)(額外的情況是,在系統(tǒng)第一次實(shí)例化模型的時(shí)候,會(huì)自動(dòng)連接數(shù)據(jù)庫(kù)獲取相關(guān)模型類對(duì)應(yīng)的數(shù)據(jù)表的字段信息)。
兩種比較簡(jiǎn)單的方法:
1、使用curl
$url?=?"";
$ch?=?curl_init();
curl_setopt($ch,?CURLOPT_URL,?$url);
curl_setopt($ch,?CURLOPT_RETURNTRANSFER,?1);
curl_setopt($ch,?CURLOPT_TIMEOUT?,?30);
$output?=?curl_exec($ch);
curl_close($ch);
echo?$output;
2、使用file_get_contents
$output?=?file_get_contents($url);
echo?$output;
3 、使用socket 也是可以的
直接寫代碼啊。
我寫了一遍截圖看。第一行參數(shù)主機(jī)、用戶名、密碼;第二行選擇數(shù)據(jù)庫(kù)‘第三行選擇字符集’
你自己試下
新增一個(gè)連接配置信息就可以了
1站外絕路地址
2遠(yuǎn)程數(shù)據(jù)庫(kù)用戶名
3遠(yuǎn)程數(shù)據(jù)庫(kù)密碼
前提是被鏈接的站點(diǎn)允許你IP的連接
可以使用pdo進(jìn)行連接
$dbms='mysql'; //數(shù)據(jù)庫(kù)類型
$host='localhost'; //數(shù)據(jù)庫(kù)主機(jī)名
$dbName='test'; //使用的數(shù)據(jù)庫(kù)
$user='root'; //數(shù)據(jù)庫(kù)連接用戶名
$pass=''; //對(duì)應(yīng)的密碼
$dsn="$dbms:host=$host;dbname=$dbName";
try {
$dbh = new PDO($dsn, $user, $pass); //初始化一個(gè)PDO對(duì)象
echo "連接成功br/";
/*你還可以進(jìn)行一次搜索操作
foreach ($dbh-query('SELECT * from FOO') as $row) {
print_r($row); //你可以用 echo($GLOBAL); 來(lái)看到這些值
}
*/
$dbh = null;
} catch (PDOException $e) {
die ("Error!: " . $e-getMessage() . "br/");
}
//默認(rèn)這個(gè)不是長(zhǎng)連接,如果需要數(shù)據(jù)庫(kù)長(zhǎng)連接,需要最后加一個(gè)參數(shù):array(PDO::ATTR_PERSISTENT = true) 變成這樣:
$db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT = true));
12mysql_connect();// 這個(gè)函數(shù)是連接數(shù)據(jù)庫(kù)所在服務(wù)器的mysql_select_db();// 這個(gè)函數(shù)是連接具體數(shù)據(jù)庫(kù)的如果是要聯(lián)接同一個(gè)服務(wù)器里的不同數(shù)據(jù)庫(kù)里的表,那么就不需要第二個(gè)函數(shù),直接在sql語(yǔ)句里進(jìn)行選擇就可以了。select * from `庫(kù)`.`表` where 1就是在表達(dá)表的時(shí)候前面用庫(kù)進(jìn)行修飾
網(wǎng)頁(yè)標(biāo)題:php如何連接外部數(shù)據(jù) php如何連接外部數(shù)據(jù)網(wǎng)絡(luò)
路徑分享:http://aaarwkj.com/article28/hhpcjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、虛擬主機(jī)、建站公司、服務(wù)器托管、網(wǎng)站設(shè)計(jì)、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)