PHP8 cubrid_pconnect
(PECL CUBRID >= 8.3.1)
cubrid_pconnect — 打开与CUBRID服务器的持久连接
说明
cubrid_pconnect(
string $host,
int $port,
string $dbname,
string $userid = ?,
string $passwd = ?
): resource
建立与 CUBRID 服务器的持久连接。
cubrid_pconnect() 的行为与 cubrid_connect() 非常相似,但有两个主要区别。
首先,在连接时,函数将首先尝试找到一个(持久) 已使用相同的主机、端口、dbname 和 userID 打开的链接。如果 找到一个,将返回它的标识符,而不是打开一个 新连接。
其次,与 SQL Server 的连接不会关闭,当 脚本的执行结束。相反,该链接将保持打开状态 将来使用 (cubrid_close() 或 cubrid_disconnect() 不会关闭 cubrid_pconnect()) 建立的链接。
因此,这种类型的链接称为“持久性”。
参数
host
CUBRID CAS 服务器的主机名或 IP 地址。
port
CUBRID CAS 服务器的端口号(BROKER_PORT在 $CUBRID/conf/cubrid_broker.conf 中配置)。
dbname
数据库的名称。
userid
数据库的用户名。
passwd
用户密码。
返回值
Connection identifier, when process is successful, 或者在失败时返回 false.
示例
示例 #1 cubrid_connect() example
<?php
printf("%-30s %s\n", "CUBRID PHP Version:", cubrid_version());
printf("\n");
$conn = cubrid_pconnect("localhost", 33000, "demodb", "dba");
if (!$conn) {
die('Connect Error ('. 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:", $server_info);
printf("%-30s %s\n", "Client Info:", $client_info);
printf("\n");
$charset = cubrid_get_charset($conn);
printf("%-30s %s\n", "CUBRID Charset:", $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
参见
- cubrid_connect() - 打开与 CUBRID 服务器的连接
- cubrid_connect_with_url() - 建立连接到 CUBRID 服务器的环境
- cubrid_pconnect_with_url() - 打开与 CUBRID 服务器的持久连接
- cubrid_disconnect() - 关闭数据库连接
- cubrid_close() - 关闭 CUBRID 连接