PHP
Database/MySQL

mysqli::$thread_id

mysqli::$thread_id

mysqli_thread_id

(PHP 5, PHP 7)

mysqli :: $ thread_id - mysqli_thread_id - 返回当前连接的线程ID

Description

面向对象的风格

int $mysqli->thread_id;

程序风格

int mysqli_thread_id ( mysqli $link )

所述mysqli_thread_id()函数返回,然后可以使用该mysqli_kill()函数被杀死当前连接的线程ID。如果连接丢失并且您使用mysqli_ping()重新连接,则线程ID将为其他。因此,只有在需要时才能获得线索ID。

注意:线程ID是在逐个连接的基础上分配的。因此,如果连接中断,然后重新建立一个新的线程ID将被分配。要杀死正在运行的查询,可以使用SQL命令KILL QUERY processid

Parameters

`link`

仅过程样式:由mysqli_connect()或mysqli_init()返回的链接标识符

Return Values

返回当前连接的线程ID。

Examples

Example #1 $mysqli->thread_id example

面向对象的风格

<?php $mysqli = new mysqli("localhost", "my_user", "my_password", "world" /* check connection */ if (mysqli_connect_errno()) {     printf("Connect failed: %s\n", mysqli_connect_error()     exit( } /* determine our thread id */ $thread_id = $mysqli->thread_id; /* Kill connection */ $mysqli->kill($thread_id /* This should produce an error */ if (!$mysqli->query("CREATE TABLE myCity LIKE City")) {     printf("Error: %s\n", $mysqli->error     exit; } /* close connection */ $mysqli->close( ?>

程序风格

<?php $link = mysqli_connect("localhost", "my_user", "my_password", "world" /* check connection */ if (mysqli_connect_errno()) {     printf("Connect failed: %s\n", mysqli_connect_error()     exit( } /* determine our thread id */ $thread_id = mysqli_thread_id($link /* Kill connection */ mysqli_kill($link, $thread_id /* This should produce an error */ if (!mysqli_query($link, "CREATE TABLE myCity LIKE City")) {     printf("Error: %s\n", mysqli_error($link)     exit; } /* close connection */ mysqli_close($link ?>

上面的例子会输出:

Error: MySQL server has gone away

© 1997–2017 The PHP Documentation Group

根据知识共享署名许可证v3.0或更高版本授权。