<?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.6 $ --> <!-- splitted from ./en/functions/filesystem.xml, last change in rev 1.87 --> <refentry id="function.parse-ini-file"> <refnamediv> <refname>parse_ini_file</refname> <refpurpose>Parse a configuration file</refpurpose> </refnamediv> <refsect1> <title>Description</title> <methodsynopsis> <type>array</type><methodname>parse_ini_file</methodname> <methodparam><type>string</type><parameter>filename</parameter></methodparam> <methodparam choice="opt"><type>bool</type><parameter>process_sections</parameter></methodparam> </methodsynopsis> <para> <function>parse_ini_file</function> loads in the ini file specified in <parameter>filename</parameter>, and returns the settings in it in an associative array. By setting the last <parameter>process_sections</parameter> parameter to &true;, you get a multidimensional array, with the section names and settings included. The default for <parameter>process_sections</parameter> is &false; </para> <note> <para> This function has nothing to do with the &php.ini; file. It is already processed, the time you run your script. This function can be used to read in your own application's configuration files. </para> </note> <note> <para> If a value in the ini file contains any non-alphanumeric characters it needs to be enclosed in double-quotes ("). </para> </note> <note> <simpara> Since PHP 4.2.1 this function is also affected by <link linkend="ini.safe-mode">safe_mode</link> and <link linkend="ini.open-basedir">open_basedir</link>. </simpara> </note> <para> The structure of the ini file is similar to that of the &php.ini;'s. </para> <warning> <para> If the ini file you are trying to parse is malformed, PHP will exit. </para> </warning> <para> <example> <title>Contents of sample.ini</title> <programlisting> <![CDATA[ ; This is a sample configuration file ; Comments start with ';', as in php.ini [first_section] one = 1 five = 5 [second_section] path = /usr/local/bin URL = "http://www.example.com/~username" ]]> </programlisting> </example> </para> <para> <example> <title><function>parse_ini_file</function> example</title> <programlisting> <![CDATA[ <?php // Parse without sections $ini_array = parse_ini_file("sample.ini"); print_r($ini_array); // Parse with sections $ini_array = parse_ini_file("sample.ini", TRUE); print_r($ini_array); ?> ]]> </programlisting> </example> </para> <para> Would produce: <informalexample> <programlisting> <![CDATA[ Array ( [one] => 1 [five] => 5 [path] => /usr/local/bin [URL] => http://www.example.com/~username ) Array ( [first_section] => Array ( [one] => 1 [five] => 5 ) [second_section] => Array ( [path] => /usr/local/bin [URL] => http://www.example.com/~username ) ) ]]> </programlisting> </informalexample> </para> </refsect1> </refentry> <!-- 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:"../../../../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 -->