(PHP 4, PHP 5)
mysql_pconnect — 打開(kāi)一個(gè)到 MySQL 服務(wù)器的持久連接
本擴展自 PHP 5.5.0 起已廢棄,并在自 PHP 7.0.0 開(kāi)始被移除。應使用 MySQLi 或 PDO_MySQL 擴展來(lái)替換之。參見(jiàn) MySQL:選擇 API 指南來(lái)獲取更多信息。用以替代本函數的有:
p:
host prefixPDO::ATTR_PERSISTENT
as a driver option$server
= ini_get("mysql.default_host"),$username
= ini_get("mysql.default_user"),$password
= ini_get("mysql.default_password"),$client_flags
= 0打開(kāi)一個(gè)到 MySQL 服務(wù)器的持久連接。
mysql_pconnect() 和 mysql_connect() 非常相似,但有兩個(gè)主要區別。
首先,當連接的時(shí)候本函數將先嘗試尋找一個(gè)在同一個(gè)主機上用同樣的用戶(hù)名和密碼已經(jīng)打開(kāi)的(持久)連接,如果找到,則返回此連接標識而不打開(kāi)新連接。
其次,當腳本執行完畢后到 SQL 服務(wù)器的連接不會(huì )被關(guān)閉,此連接將保持打開(kāi)以備以后使用(mysql_close() 不會(huì )關(guān)閉由 mysql_pconnect() 建立的連接)。
此種連接稱(chēng)為“持久的”。
server
MySQL 服務(wù)器地址,參數也可以包括端口號,例如 “hostname:port“ 或者是本機套接字的的路徑,例如 “:/path/to/socket“
如果 PHP 配置文件中 mysql.default_host 的值未設置(默認情況下),則默認值為 'localhost:3306'
username
數據庫連接使用的用戶(hù)名。默認為當前服務(wù)器進(jìn)程的用戶(hù)。
password
數據庫連接使用的密碼。默認為空密碼。
client_flags
參數 client_flags
可以為以下常量:
128 (enable LOAD DATA LOCAL
handling),
MYSQL_CLIENT_SSL
,
MYSQL_CLIENT_COMPRESS
,
MYSQL_CLIENT_IGNORE_SPACE
或
MYSQL_CLIENT_INTERACTIVE
。
如果成功則返回一個(gè)正的 MySQL 持久連接標識符,出錯則返回 false
。
版本 | 說(shuō)明 |
---|---|
5.5.0 |
函數會(huì )拋出一個(gè) E_DEPRECATED 錯誤。
|
注意:
需要注意的是,此函數僅當在 PHP 模塊化運行時(shí)才會(huì )生效。更多信息請參閱 持久數據庫連接 章節。
使用持久連接可能需要對 Apache 和 MySQL 配置進(jìn)行一些調整,以確保不超過(guò) MySQL 服務(wù)器允許的最大連接數。