首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MYSQLI_OPT_CONNECT_TIMEOUT,mysqli选项无效

问MYSQLI_OPT_CONNECT_TIMEOUT,mysqli选项无效
EN

Stack Overflow用户
提问于 2019-08-20 08:56:57
回答 1查看 1.5K关注 0票数 0

我收到以下警告

警告: mysqli::options()期望参数1是长的,字符串在.

使用此代码时:

代码语言:javascript
复制
$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 300);

我正在尝试运行一个需要超过1分钟才能执行的查询。所以我想增加连接超时。连接如下:

代码语言:javascript
复制
$mysqli = mysqli_init( );
$mysqli->options(MYSQLI_OPT_INT_AND_FLOAT_NATIVE, 1);
$mysqli->options(MYSQLI_OPT_CONNECT_TIMEOUT, 300);
$mysqli->options(MYSQLI_OPT_READ_TIMEOUT, 300);
if (!$mysqli->real_connect($GLOBALS['ipServer'], $GLOBALS['mysqlLogin'], $GLOBALS['mysqlPwd'], $GLOBALS['db'])) {
    die("Error connecting to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error);
    exit();
}

似乎mysqli选项不起作用。有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2020-10-19 15:35:14

您应该启用所有PHP错误,因为您可能会碰到一个通知,例如:

注意:使用未定义的常量MYSQLI_OPT_CONNECT_TIMEOUT -假定为"MYSQLI_OPT_CONNECT_TIMEOUT“

这意味着该常量是未定义的(可能您的MySQLi扩展不支持它),并且PHP将其视为包含MYSQLI_OPT_CONNECT_TIMEOUT的字符串。所以你看到的警告是正常的。

尝试使用get_defined_constants()转储所有常量,以查看定义了哪些常量。您还可以尝试使用PHP手册中提供的整数值(这并不是一个很好的建议,但同时还有正确的注释,这是有意义的)。

但归根结底,这取决于您的MySQLi扩展是否支持它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57570060

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档