这些函数的行为受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如果连接丢失,则自动重新连接。
注意:mysqlnd 驱动程序忽略了此php.ini设置,并从 PHP 8.2.0 开始将其移除。
mysqli.rollback_on_cached_plink
bool如果启用此选项,关闭持久连接将在将其放回持久连接池之前回滚此连接的任何挂起的交易。否则,只有在重用连接或实际关闭连接时,才会回滚挂起的交易。
用户无法通过 API 调用或运行时配置设置来设置MYSQL_OPT_READ_TIMEOUT
。请注意,如果可能的话,libmysqlclient
和流将如何解释MYSQL_OPT_READ_TIMEOUT
的值会有所不同。