Runtime Configuration

The behaviour of these functions is affected by settings in php.ini.

MySQLi Configuration Options
NameDefaultChangeableChangelog
mysqli.allow_local_infile"0"INI_SYSTEMBefore PHP 7.2.16 and 7.3.3 the default was "1".
mysqli.local_infile_directory INI_SYSTEMAvailable as of 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_socketNULLINI_ALL 
mysqli.default_hostNULLINI_ALL 
mysqli.default_userNULLINI_ALL 
mysqli.default_pwNULLINI_ALL 
mysqli.reconnect"0"INI_SYSTEMRemoved as of PHP 8.2.0
mysqli.rollback_on_cached_plink"0"INI_SYSTEM 

For further details and definitions of the preceding INI_* constants, see the chapter on configuration changes.

Here's a short explanation of the configuration directives.

mysqli.allow_local_infileint

Allow accessing, from PHP's perspective, local files with LOAD DATA statements

mysqli.local_infile_directorystring

Allows restricting LOCAL DATA loading to files located in this designated directory.

mysqli.allow_persistentint

Enable the ability to create persistent connections using mysqli_connect().

mysqli.max_persistentint

Maximum of persistent connections that can be made. Set to 0 for unlimited.

The maximum number of MySQL connections per process.

mysqli.default_portint

The default TCP port number to use when connecting to the database server if no other port is specified. If no default is specified, the port will be obtained from the MYSQL_TCP_PORT environment variable, the mysql-tcp entry in /etc/services or the compile-time MYSQL_PORT constant, in that order. Win32 will only use the MYSQL_PORT constant.

mysqli.default_socketstring

The default socket name to use when connecting to a local database server if no other socket name is specified.

mysqli.default_hoststring

The default server host to use when connecting to the database server if no other host is specified.

mysqli.default_userstring

The default user name to use when connecting to the database server if no other name is specified.

mysqli.default_pwstring

The default password to use when connecting to the database server if no other password is specified.

mysqli.reconnectint

Automatically reconnect if the connection was lost.

Note: This php.ini setting had been ignored by the mysqlnd driver, and was removed as of PHP 8.2.0.

If this option is enabled, closing a persistent connection will rollback any pending transactions of this connection before it is put back into the persistent connection pool. Otherwise, pending transactions will be rolled back only when the connection is reused, or when it is actually closed.

Users cannot set MYSQL_OPT_READ_TIMEOUT through an API call or runtime configuration setting. Note that if it were possible there would be differences between how libmysqlclient and streams would interpret the value of MYSQL_OPT_READ_TIMEOUT.

To Top