PHP8 cubrid_connect_with_url

2024-03-27 10:21 更新

(PECL CUBRID >= 8.3.1)

cubrid_connect_with_url — 建立连接到CUBRID服务器的环境

说明

cubrid_connect_with_url(
    string $conn_url,
    string $userid = ?,
    string $passwd = ?,
    bool $new_link = false
): resource

cubrid_connect_with_url() 函数用于 使用 Connection 建立连接到服务器的环境 使用 URL 字符串参数传递的信息。如果 HA 功能是 在 CUBRID 中启用,您必须指定 备用服务器,用于在发生故障时进行故障转移,在 URL 中 此函数的字符串参数。如果用户名和密码不是 给定,则默认情况下将建立“PUBLIC”连接。

<url> ::= CUBRID:<host>:<db_name>:<db_user>:<db_password>:[?<properties>]

<properties> ::= <property> [&<property>]

<属性> ::= alhosts=<alternative_hosts>[ &rctime=<time>]

<属性> ::= login_timeout=<milli_sec>

<属性> ::= query_timeout=<milli_sec>

<properties> ::= disconnect_on_query_timeout=true|false

<alternative_hosts> ::= <standby_broker1_host>:<端口> [,<standby_broker2_host>:<端口>]

<host> := 主机名 |IP_ADDR

<时间> := 秒

<milli_sec> := 秒之间

  • host :master 数据库的主机名或 IP 地址
  • db_name :数据库的名称
  • db_user :数据库用户的名称
  • db_password :数据库用户密码
  • alhosts :指定备用服务器的代理信息,即 用于无法连接到活动服务器时的故障转移。 您可以指定多个代理进行故障转移,以及与代理的连接 按照 alhosts 中列出的顺序尝试
  • rctime :尝试连接到活动代理之间的间隔 发生了哪些故障。发生故障后,系统将连接到 Althosts 指定的代理(故障转移),终止事务,然后 尝试在每个 RCtime 连接到 master 数据库的活动代理。 默认值为 600 秒。
  • login_timeout :数据库登录的超时值(单位:毫秒)。默认值 value 为 0,表示无限推迟。
  • query_timeout :查询请求的超时值(单位:毫秒)。超时后, 将发送一条消息,以取消请求传输到服务器的查询。回报 值可能取决于disconnect_on_query_timeout配置;即使 取消请求的消息发送到服务器,该请求可能会成功。
  • disconnect_on_query_timeout : 配置是否立即返回的值 超时时执行函数的错误。默认值为 false。
注意:?以及用作标识符的 在PHP连接中,密码中不能包含URL。以下是 用作连接 URL 无效的密码示例,因为它包含 "".:?:$url = “CUBRID:localhost:33000:tdb:dba:12?:?login_timeout=100”;包含或可能作为单独参数传递的密码。?:$url = “CUBRID:localhost:33000:tbd:::?login_timeout=100”;$ear=kubrid_connect_with_url($url, “分贝”, “12?”);如果用户或密码为空,则无法删除“”,如下所示 举个例子。:$url = “CUBRID:localhost:33000:demodb:::”;

参数 

conn_url

包含服务器连接信息的字符串。

userid

数据库的用户名。

passwd

用户密码。

new_link

如果使用相同的参数对 cubrid_connect_with_url() 进行第二次调用, 不会建立新连接,而是建立连接 将返回已打开的连接的标识符。该参数修改此行为,并 使 cubrid_connect_with_url() 始终打开一个新的 连接,即使 cubrid_connect_with_url() 是 使用相同的参数调用之前。new_link

返回值 

Connection identifier, when process is successful, 或者在失败时返回 false.

示例 

示例 #1 cubrid_connect_with_url() url without properties example

<?php
$conn_url = "CUBRID:localhost:33000:demodb:dba::";
$con = cubrid_connect_with_url($conn_url);

if ($con) {
   echo "connected successfully";
   cubrid_execute($con, "create table person(id int,name char(16))");
   $req =cubrid_execute($con, "insert into person values(1,'James')");

   if ($req) {
      cubrid_close_request($req);
      cubrid_commit($con);
   } else {
      cubrid_rollback($con);
   }
   cubrid_disconnect($con);
}
?>

示例 #2 cubrid_connect_with_url() url with properties 示例

<?php
$conn_url = "CUBRID:127.0.0.1:33000:demodb:dba::?login_timeout=100";
$con = cubrid_connect_with_url ($conn_url);

if ($con) {
   echo "connected successfully";
   cubrid_execute($con, "create table person(id int,name char(16))");
   $req =cubrid_execute($con, "insert into person values(1,'James')");

   if ($req) {
      cubrid_close_request($req);
      cubrid_commit($con);
   } else {
      cubrid_rollback($con);
   }
   cubrid_disconnect($con);
}
?>

参见 

  • cubrid_connect() - 打开与 CUBRID 服务器的连接
  • cubrid_pconnect() - 打开与 CUBRID 服务器的持久连接
  • cubrid_pconnect_with_url() - 打开与 CUBRID 服务器的持久连接
  • cubrid_disconnect() - 关闭数据库连接
  • cubrid_close() - 关闭 CUBRID 连接


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号