关于 "mysqli.max_persistent int"。
文档说 "设置为 0 表示无限制"。
不应该将该值设置为 -1 表示无限制吗?
这些函数的行为受 php.ini 中的设置影响。
名称 | 默认值 | 可更改 | 变更日志 |
---|---|---|---|
mysqli.allow_local_infile | "0" | INI_SYSTEM |
在 PHP 7.2.16 和 7.3.3 之前,默认值为 "1"。 |
mysqli.local_infile_directory | INI_SYSTEM |
从 PHP 8.1.0 开始可用。 | |
mysqli.allow_persistent | "1" | INI_SYSTEM |
|
mysqli.max_persistent | "-1" | INI_SYSTEM |
|
mysqli.max_links | "-1" | INI_SYSTEM |
|
mysqli.default_port | "3306" | INI_ALL |
|
mysqli.default_socket | NULL | INI_ALL |
|
mysqli.default_host | NULL | INI_ALL |
|
mysqli.default_user | NULL | INI_ALL |
|
mysqli.default_pw | NULL | INI_ALL |
|
mysqli.reconnect | "0" | INI_SYSTEM |
从 PHP 8.2.0 开始移除 |
mysqli.rollback_on_cached_plink | "0" | INI_SYSTEM |
有关上述 INI_* 常量的更多详细信息和定义,请参见关于 配置更改 的章节。
以下是配置指令的简短说明。
mysqli.allow_local_infile
int允许从 PHP 的角度访问使用 LOAD DATA 语句的本地文件。
mysqli.local_infile_directory
string允许将 LOCAL DATA 加载限制在指定目录中的文件。
mysqli.allow_persistent
int启用使用 mysqli_connect() 创建持久连接的能力。
mysqli.max_persistent
int可以建立的持久连接的最大数量。设置为 0 表示无限制。
mysqli.max_links
int每个进程允许的最大 MySQL 连接数。
mysqli.default_port
int如果未指定其他端口,则连接到数据库服务器时使用的默认 TCP 端口号。如果没有指定默认值,则端口将按顺序从 MYSQL_TCP_PORT
环境变量、/etc/services 中的 mysql-tcp
条目或编译时的 MYSQL_PORT
常量获取。Win32 只会使用 MYSQL_PORT
常量。
mysqli.default_socket
string如果未指定其他套接字名称,则连接到本地数据库服务器时使用的默认套接字名称。
mysqli.default_host
string如果未指定其他主机,则连接到数据库服务器时使用的默认服务器主机。
mysqli.default_user
string如果未指定其他名称,则连接到数据库服务器时使用的默认用户名。
mysqli.default_pw
string如果未指定其他密码,则连接到数据库服务器时使用的默认密码。
mysqli.reconnect
int如果连接断开,则自动重新连接。
注意: 此 php.ini 设置已被 mysqlnd 驱动程序忽略,并在 PHP 8.2.0 中移除。
mysqli.rollback_on_cached_plink
bool如果启用此选项,关闭持久连接将在将连接放回持久连接池之前回滚该连接的任何挂起的事务。否则,挂起的事务将仅在重用连接或实际关闭连接时回滚。
用户无法通过 API 调用或运行时配置设置来设置 MYSQL_OPT_READ_TIMEOUT
。请注意,如果可能的话,libmysqlclient
和流将以不同的方式解释 MYSQL_OPT_READ_TIMEOUT
的值。