牛牛在线工具

mysqli::poll()

收录 8868 个 PHP 函数,含用途说明与用法示例。

mysqli::poll()

等待数据库连接上的可用事件

函数名:mysqli::poll() 适用版本:PHP 5 >= 5.3.0, PHP 7 用法:mysqli::poll() 函数用于等待数据库连接上的可用事件。它返回一个整数,表示有多少个套接字有事件可用,或者在超时之前没有事件可用时返回 0。这个函数通常用于非阻塞的 MySQLi 连接。 语法:int mysqli::poll(array &$read, array &$error, array &$reject, int $seconds [, int $microseconds = 0]) 参数: &$read:一个包含读事件套接字的数组 &$error:一个包含错误事件套接字的数组 &$reject:一个包含拒绝事件套接字的数组 $seconds:等待事件的秒数 $microseconds:等待事件的微秒数(可选,默认为0) 返回值:返回一个整数,表示有多少个套接字有事件可用,或者在超时之前没有事件可用时返回 0。 示例: <?php // 创建一个非阻塞的 MySQLi 连接 $mysqli = new mysqli("localhost", "username", "password", "database"); $mysqli->options(MYSQLI_OPT_NONBLOCK, true); // 准备套接字数组 $read = array($mysqli); $error = array($mysqli); $reject = array($mysqli); // 等待事件并检查返回值 $result = $mysqli->poll($read, $error, $reject, 5); if ($result === false) { // 发生错误 echo "Polling failed: " . $mysqli->error; } else if ($result === 0) { // 超时,没有事件可用 echo "No events available."; } else { // 有事件可用 echo "Events available: " . $result; // 处理读事件 foreach ($read as $socket) { // 处理读事件的逻辑 } // 处理错误事件 foreach ($error as $socket) { // 处理错误事件的逻辑 } // 处理拒绝事件 foreach ($reject as $socket) { // 处理拒绝事件的逻辑 } } // 关闭连接 $mysqli->close(); ?> 以上示例演示了如何使用 mysqli::poll() 函数等待数据库连接上的可用事件。首先,创建一个非阻塞的 MySQLi 连接,并设置相应的选项。然后,准备包含套接字的数组,并调用 mysqli::poll() 函数等待事件。根据返回值,可以判断是否有事件可用,如果有,可以处理相应的事件。最后,关闭连接。 请注意,此示例仅用于演示 mysqli::poll() 的基本用法,实际应用中可能需要根据具体需求进行适当的调整和优化。