您好这条线路连接到mysql数据库,只是想知道是否有办法为连接尝试设置超时?感谢。
$db = new mysqli($server, $usr, $passwd, $dbname);
答案 0 :(得分:11)
是的,您可以使用mysqli明确指定尝试从php程序连接到MySQL数据库的超时。
但是,它有点毛茸茸。使用new mysqli()
时,使用可重用连接池。如果您要设置超时或任何其他选项,则需要使用real_connect
,如下所示:
$timeout = 30; /* thirty seconds for timeout */
$link = mysqli_init( );
$link->options( MYSQLI_OPT_CONNECT_TIMEOUT, $timeout ) ||
die 'mysqli_options croaked: ' . $link->error;
$link->real_connect($server, $usr, $passwd, $dbname) ||
die 'mysqli_real_connect croaked: ' . $link->error;