<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<section xml:id="mysqli.configuration" xmlns="http://docbook.org/ns/docbook">
 &reftitle.runtime;
 &extension.runtime;
 <para>
  <table xml:id="mysqli.configuration.options">
   <title>MySQLi Configuration Options</title>
   <tgroup cols="4">
    <thead>
     <row>
      <entry>&Name;</entry>
      <entry>&Default;</entry>
      <entry>&Changeable;</entry>
      <entry>&Changelog;</entry>
     </row>
    </thead>
    <tbody xml:id="mysqli.configuration.list">
     <row>
      <entry><link linkend="ini.mysqli.allow-local-infile">mysqli.allow_local_infile</link></entry>
      <entry>"0"</entry>
      <entry>PHP_INI_SYSTEM</entry>
      <entry>Before PHP 7.2.16 and 7.3.3 the default was "1".</entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.local-infile-directory">mysqli.local_infile_directory</link></entry>
      <entry></entry>
      <entry>PHP_INI_SYSTEM</entry>
      <entry>Available as of PHP 8.1.0.</entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.allow-persistent">mysqli.allow_persistent</link></entry>
      <entry>"1"</entry>
      <entry>PHP_INI_SYSTEM</entry>
      <entry></entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.max-persistent">mysqli.max_persistent</link></entry>
      <entry>"-1"</entry>
      <entry>PHP_INI_SYSTEM</entry>
      <entry></entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.max-links">mysqli.max_links</link></entry>
      <entry>"-1"</entry>
      <entry>PHP_INI_SYSTEM</entry>
      <entry></entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.default-port">mysqli.default_port</link></entry>
      <entry>"3306"</entry>
      <entry>PHP_INI_ALL</entry>
      <entry></entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.default-socket">mysqli.default_socket</link></entry>
      <entry>NULL</entry>
      <entry>PHP_INI_ALL</entry>
      <entry></entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.default-host">mysqli.default_host</link></entry>
      <entry>NULL</entry>
      <entry>PHP_INI_ALL</entry>
      <entry></entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.default-user">mysqli.default_user</link></entry>
      <entry>NULL</entry>
      <entry>PHP_INI_ALL</entry>
      <entry></entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.default-pw">mysqli.default_pw</link></entry>
      <entry>NULL</entry>
      <entry>PHP_INI_ALL</entry>
      <entry></entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.reconnect">mysqli.reconnect</link></entry>
      <entry>"0"</entry>
      <entry>PHP_INI_SYSTEM</entry>
      <entry>Removed as of PHP 8.2.0</entry>
     </row>
     <row>
      <entry><link linkend="ini.mysqli.rollback-on-cached-plink">mysqli.rollback_on_cached_plink</link></entry>
      <entry>"0"</entry>
      <entry>PHP_INI_SYSTEM</entry>
      <entry></entry>
     </row>
    </tbody>
   </tgroup>
  </table>
 </para>
 <para>
  For further details and definitions of the preceding PHP_INI_* constants, see
  the chapter on <link linkend="configuration.changes">configuration
  changes</link>.
 </para>

 &ini.descriptions.title;

 <para>
 <variablelist>
  
  <varlistentry xml:id="ini.mysqli.allow-local-infile">
   <term>
    <parameter>mysqli.allow_local_infile</parameter>
    <type>int</type>
   </term>
   <listitem>
    <para>
     Allow accessing, from PHP's perspective, local files with LOAD DATA
     statements
    </para>
   </listitem>
  </varlistentry>

  <varlistentry xml:id="ini.mysqli.local-infile-directory">
   <term>
    <parameter>mysqli.local_infile_directory</parameter>
    <type>string</type>
   </term>
   <listitem>
    <para>
     Allows restricting LOCAL DATA loading to files located in this designated 
     directory.
    </para>
   </listitem>
  </varlistentry>

  <varlistentry xml:id="ini.mysqli.allow-persistent">
   <term>
    <parameter>mysqli.allow_persistent</parameter>
    <type>int</type>
   </term>
   <listitem>
    <para>
     Enable the ability to create persistent connections using 
     <function>mysqli_connect</function>.
    </para>
   </listitem>
  </varlistentry>
  <varlistentry xml:id="ini.mysqli.max-persistent">
   <term>
    <parameter>mysqli.max_persistent</parameter>
    <type>int</type>
   </term>
   <listitem>
    <para>
     Maximum of persistent connections that can be made. Set to 
     0 for unlimited.
    </para>
   </listitem>
  </varlistentry>
  <varlistentry xml:id="ini.mysqli.max-links">
   <term>
    <parameter>mysqli.max_links</parameter>
    <type>int</type>
   </term>
   <listitem>
    <para>
     The maximum number of MySQL connections per process.
    </para>
   </listitem>
  </varlistentry>
   <varlistentry xml:id="ini.mysqli.default-port">
   <term>
    <parameter>mysqli.default_port</parameter>
    <type>int</type>
   </term>
   <listitem>
    <para>
     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 <literal>MYSQL_TCP_PORT</literal> environment
     variable, the <literal>mysql-tcp</literal> entry in
     <filename>/etc/services</filename> or the compile-time
     <literal>MYSQL_PORT</literal> constant, in that order. Win32
     will only use the <literal>MYSQL_PORT</literal> constant.
    </para>
   </listitem>
  </varlistentry>
  
  <varlistentry xml:id="ini.mysqli.default-socket">
   <term>
    <parameter>mysqli.default_socket</parameter>
    <type>string</type>
   </term>
   <listitem>
    <para>
     The default socket name to use when connecting to a local
     database server if no other socket name is specified.
    </para>
   </listitem>
  </varlistentry>
   <varlistentry xml:id="ini.mysqli.default-host">
   <term>
    <parameter>mysqli.default_host</parameter>
    <type>string</type>
   </term>
   <listitem>
    <para>
     The default server host to use when connecting to the database
     server if no other host is specified.
    </para>
   </listitem>
  </varlistentry>
  
  <varlistentry xml:id="ini.mysqli.default-user">
   <term>
    <parameter>mysqli.default_user</parameter>
    <type>string</type>
   </term>
   <listitem>
    <para>
     The default user name to use when connecting to the database
     server if no other name is specified.
    </para>
   </listitem>
  </varlistentry>
  
  <varlistentry xml:id="ini.mysqli.default-pw">
   <term>
    <parameter>mysqli.default_pw</parameter>
    <type>string</type>
   </term>
   <listitem>
    <para>
     The default password to use when connecting to the database
     server if no other password is specified.
    </para>
   </listitem>
  </varlistentry>
  
  <varlistentry xml:id="ini.mysqli.reconnect">
   <term>
    <parameter>mysqli.reconnect</parameter>
    <type>int</type>
   </term>
   <listitem>
    <para>
     Automatically reconnect if the connection was lost.
    </para>
    <note>
     <simpara>This &php.ini; setting had been ignored by the mysqlnd driver, and was removed
      as of PHP 8.2.0.
     </simpara>
    </note>
   </listitem>
  </varlistentry>

  <varlistentry xml:id="ini.mysqli.rollback-on-cached-plink">
   <term>
    <parameter>mysqli.rollback_on_cached_plink</parameter>
    <type>bool</type>
   </term>
   <listitem>
    <para>
     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.
    </para>
   </listitem>
  </varlistentry>
  
 </variablelist>
 </para>
 <para>
   Users cannot set <literal>MYSQL_OPT_READ_TIMEOUT</literal> through an API 
   call or runtime configuration setting. Note that if it were possible there
   would be differences between how <literal>libmysqlclient</literal> and 
   streams would interpret the value of <literal>MYSQL_OPT_READ_TIMEOUT</literal>. 
 </para>
</section>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
