mysqli_connect和错误的主机名-奇怪的行为

bejyjqdl  于 2023-05-05  发布在  Mysql
关注(0)|答案(1)|浏览(138)

我目前正在编写一个程序,允许用户在前端输入主机名、用户名、数据库和密码。在后端我使用mysqli_connect。我注意到,如果用户输入了一个不正确的主机名或一个不存在的主机,我不会得到一个错误,但程序会停止,我必须重新启动Apache。我想避免这种情况,目前我硬编码'localhost'作为主机,但我不想这样做。我在mysqli_connect的末尾使用了一个die语句,但它仍然会停止。
我的问题是:有没有办法将mysqls搜索主机的时间限制在10秒或更短的时间内?或者在我使用mysqli_connect之前,有没有好的方法来验证或检查主机是否存在?

6yt4nkrj

6yt4nkrj1#

我想你可能正在寻找MYSQLI_OPT_CONNECT_TIMEOUT选项。
方便地记录在这里:http://php.net/manual/en/mysqli.options.php

$mysqli = mysqli_init();
$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 5);
$mysqli->real_connect('localhost', 'my_user', 'my_password', 'my_db');

相关问题