W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 0.1.0)
PDO::__construct — 創(chuàng)建一個(gè)表示數(shù)據(jù)庫連接的 PDO 實(shí)例
public PDO::__construct(
string $dsn,
?string $username = null,
?string $password = null,
?array $options = null
)
創(chuàng)建一個(gè)表示連接到請求數(shù)據(jù)庫的數(shù)據(jù)庫連接 PDO 實(shí)例。
dsn
數(shù)據(jù)源名稱或叫做 DSN,包含了請求連接到數(shù)據(jù)庫的信息。
通常,一個(gè) DSN 由 PDO 驅(qū)動名、緊隨其后的冒號、以及具體 PDO 驅(qū)動的連接語法組成。更深入的信息能從 PDO 具體驅(qū)動文檔找到。
dsn
參數(shù)支持三種不同的方式 創(chuàng)建一個(gè)數(shù)據(jù)庫連接:
dsn
包含完整的DSN。
dsn
由 uri:
后跟 URI 組成,該 URI 包含定義 DSN 字符串的文件位置。URI 可以指定本地文件或遠(yuǎn)程 URL。
uri:file:///path/to/dsnfile
dsn
由映射到 php.ini 中定義 DSN 字符串的 pdo.dsn.
的 name
name
名組成。
注意:
別名必須得在 php.ini 中定義了,不能是在 .htaccess 或 httpd.conf 中 。
username
DSN字符串中的用戶名。對于某些PDO驅(qū)動,此參數(shù)為可選項(xiàng)。
password
DSN字符串中的密碼。對于某些PDO驅(qū)動,此參數(shù)為可選項(xiàng)。
options
一個(gè)具體驅(qū)動的連接選項(xiàng)的鍵=>值數(shù)組。
如果試圖連接到請求的數(shù)據(jù)庫失敗,無論當(dāng)前設(shè)置了哪個(gè) PDO::ATTR_ERRMODE,PDO::__construct() 拋出 PDOException。
示例 #1 通過驅(qū)動程序調(diào)用創(chuàng)建 PDO 實(shí)例
<?php
/* Connect to a MySQL database using driver invocation */
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';
$dbh = new PDO($dsn, $user, $password);
?>
示例 #2 通過 URI 調(diào)用創(chuàng)建 PDO 實(shí)例
以下示例假定該文件存在并具有文件權(quán)限 使 PHP 能夠讀取文件。該文件包含 PDO DSN 到 通過 PDO_ODBC 驅(qū)動程序連接到 DB2 數(shù)據(jù)庫:/usr/local/dbconnect
odbc:DSN=SAMPLE;UID=john;PWD=mypass
PHP 腳本可以簡單的傳遞指向文件 URI 的 參數(shù)來創(chuàng)建數(shù)據(jù)庫連接: uri:
<?php
/* Connect to an ODBC database using driver invocation */
$dsn = 'uri:file:///usr/local/dbconnect';
$user = '';
$password = '';
$dbh = new PDO($dsn, $user, $password);
?>
示例 #3 使用別名創(chuàng)建一個(gè)PDO實(shí)例
以下示例假定包含以下內(nèi)容 條目以啟用與 MySQL 數(shù)據(jù)庫的連接,僅使用 別名:php.inimydb
[PDO] pdo.dsn.mydb="mysql:dbname=testdb;host=localhost"
<?php
/* 使用別名連接到 ODBC 數(shù)據(jù)庫 */
$dsn = 'mydb';
$user = '';
$password = '';
$dbh = new PDO($dsn, $user, $password);
?>
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: