(PECL CUBRID >= 8.3.1)
cubrid_pconnect — 開啟與 CUBRID 伺服器的持續連線
建立與 CUBRID 伺服器的持續連線。
cubrid_pconnect() 的作用與 cubrid_connect() 非常相似,但有兩個主要區別。
首先,在連線時,此函式會先嘗試尋找已開啟且具有相同主機、連接埠、資料庫名稱和使用者 ID 的(持久)連結。如果找到相符的連結,則會傳回其識別碼,而不是開啟新的連線。
其次,當程式碼執行結束時,與 SQL 伺服器的連線不會關閉。連結將保持開啟狀態以供將來使用(cubrid_close() 或 cubrid_disconnect() 不會關閉由 cubrid_pconnect() 建立的連結)。
因此,這種連結稱為「持久連結」。
host
CUBRID CAS 伺服器的主機名稱或 IP 位址。
port
CUBRID CAS 伺服器的連接埠號碼(在 $CUBRID/conf/cubrid_broker.conf 中設定的 BROKER_PORT)。
dbname
資料庫名稱。
userid
資料庫的使用者名稱。
passwd
使用者密碼。
連線成功時傳回連線識別碼,失敗時傳回 false
。
範例 #1 cubrid_connect() 範例
<?php
printf("%-30s %s\n", "CUBRID PHP 版本:", cubrid_version());
printf("\n");
$conn = cubrid_pconnect("localhost", 33000, "demodb", "dba");
if (!$conn) {
die('連線錯誤 ('. cubrid_error_code() .')' . cubrid_error_msg());
}
$db_params = cubrid_get_db_parameter($conn);
while (list($param_name, $param_value) = each($db_params)) {
printf("%-30s %s\n", $param_name, $param_value);
}
printf("\n");
$server_info = cubrid_get_server_info($conn);
$client_info = cubrid_get_client_info();
printf("%-30s %s\n", "伺服器資訊:", $server_info);
printf("%-30s %s\n", "客戶端資訊:", $client_info);
printf("\n");
$charset = cubrid_get_charset($conn);
printf("%-30s %s\n", "CUBRID 字元集:", $charset);
cubrid_disconnect($conn);
?>
上述範例將輸出
CUBRID PHP Version: 9.1.0.0001 PARAM_ISOLATION_LEVEL 3 LOCK_TIMEOUT -1 MAX_STRING_LENGTH 1073741823 PARAM_AUTO_COMMIT 1 Server Info: 9.1.0.0212 Client Info: 9.1.0 CUBRID Charset: iso8859-1