spa*_*mix 4 php mysql mysqli timeout
嗨,我这条线连接到mysql数据库,只是想知道是否有办法设置连接尝试的超时?谢谢.
$db = new mysqli($server, $usr, $passwd, $dbname);
Run Code Online (Sandbox Code Playgroud)
O. *_*nes 12
是的,您可以使用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 );
Run Code Online (Sandbox Code Playgroud)
这里有一个不错的解释:http://php.net/manual/en/mysqli.real-connect.php