Возвращает ID потока текущего подключения

# mysqli::$thread_id

# mysqli_thread_id

(PHP 5, PHP 7, PHP 8)

mysqli::$thread_id -- mysqli_thread_id — Возвращает ID потока текущего подключения

### Описание

Объектно-ориентированный стиль

int $mysqli->thread_id;

Процедурный стиль

function mysqli_thread_id(mysqli `$mysql`): int

Функция mysqli_thread_id() возвращает ID потока текущего подключения. Идентификатор передают в функцию mysqli_kill(), чтобы завершить конкретный поток. Повторное подключение функцией mysqli_ping(), которое устанавливают после потери соединения, изменит идентификатор потока. Поэтому идентификатор потока получают, когда требуется.

> Замечание:

> Идентификатор потока назначается для каждого подключения отдельно. Поэтому после разрыва и повторной установки соединения назначается новый ID.

> Запущенный запрос завершают SQL-командой `KILL QUERY processid`.

### Список параметров

`mysql`
  Только для процедурного стиля: объект mysqli, который вернула функция mysqli_connect() или функция mysqli_init().

### Возвращаемые значения

Функция возвращает ID потока текущего подключения.

### Примеры

Пример #1 Пример получения идентификатора потока текущего соединения методом $mysqli->thread_id

Объектно-ориентированный стиль

    <?php

    $mysqli = new mysqli("localhost", "my_user", "my_password", "world");

    /* Проверяем соединение */
    if (mysqli_connect_errno()) {
        printf("Возник сбой соединения: %s\n", mysqli_connect_error());
        exit();
    }

    /* Определяем ID потока */
    $thread_id = $mysqli->thread_id;

    /* Завершаем соединение */
    $mysqli->kill($thread_id);

    /* Этот блок кода вызовет ошибку */
    if (!$mysqli->query("CREATE TABLE myCity LIKE City")) {
        printf("Ошибка: %s\n", $mysqli->error);
        exit;
    }

    /* Закрываем соединение */
    $mysqli->close();

    ?>

Процедурный стиль

    <?php

    $link = mysqli_connect("localhost", "my_user", "my_password", "world");

    /* Проверяем соединение */
    if (mysqli_connect_errno()) {
        printf("Возник сбой соединения: %s\n", mysqli_connect_error());
        exit();
    }

    /* Определяем ID потока */
    $thread_id = mysqli_thread_id($link);

    /* Завершаем соединение */
    mysqli_kill($link, $thread_id);

    /* Этот блок кода вызовет ошибку */
    if (!mysqli_query($link, "CREATE TABLE myCity LIKE City")) {
        printf("Ошибка: %s\n", mysqli_error($link));
        exit;
    }

    /* Закрываем соединение */
    mysqli_close($link);

    ?>

Результат выполнения приведённых примеров:

    Error: MySQL server has gone away

### Смотрите также

- mysqli_kill() - Просит сервер завершить MySQL-поток

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open