PHP mysqli_next_result MySQLi 函数

  • 定义和用法

    mysqli_next_result - 为读取 multi_query 执行之后的下一个结果集做准备
  • 版本支持

    PHP4 PHP5 PHP7
    不支持 支持 支持
  • 语法

    mysqli_next_result ( mysqli $link )
    
    mysqli_multi_query() 函数执行之后, 为读取下一个结果集做准备, 然后可以使用 mysqli_store_result()mysqli_use_result() 函数读取下一个结果集。
  • 参数

    参数 必需的 描述
    link mysqli_connect()mysqli_init() 返回的链接标识。
  • 返回值

    成功时返回 TRUE, 或者在失败时返回 FALSE。
  • 示例

    <?php
    $link = mysqli_connect("localhost", "my_user", "my_password", "world");
    
    /* 检查连接 */
    if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error());
        exit();
    }
    
    $query  = "SELECT CURRENT_USER();";
    $query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";
    
    /* 批量执行查询 */
    if (mysqli_multi_query($link, $query)) {
        do {
            /* store first result set */
            if ($result = mysqli_store_result($link)) {
                while ($row = mysqli_fetch_row($result)) {
                    printf("%s\n", $row[0]);
                }
                mysqli_free_result($result);
            }
            /* print divider */
            if (mysqli_more_results($link)) {
                printf("-----------------\n");
            }
        } while (mysqli_next_result($link));
    }
    
    /* 关闭连接 */
    mysqli_close($link);
    
  • 相关函数

    mysqli_use_result() - 启动结果集检索
    mysqli_store_result() - 转移上一次查询返回的结果集
    mysqli_multi_query() - 执行查询
    mysqli_more_results() - 检查批量查询中是否还有查询结果