Руководство по PHP
Пред. |  | След.

# parse_ini_file

(PHP 4, PHP 5)

parse_ini_file -- Обрабатывает конфигурационный файл

## Описание

array parse_ini_file ( string filename [, bool process_sections] )

parse_ini_file() загружает ini-файл, указанный в аргументе filename, и возвращает его настройки в виде ассоциативного массива. Установив последний аргумент process_sections в `TRUE`, вы получаете многомерный массив, который включает как название отдельных настроек, так и секции. По умолчанию process_sections равен `FALSE`

> Замечание: Эта функция не имеет никакого отношения к файлу `php.ini`. К моменту выполнения вашего скрипта, он уже обработан. Эта функция может быть использована для загрузки настроек вашего собственного приложения.

> Замечание: Если значение в ini-файле содержит прочие символы, кроме букв и цифр, оно должно заключаться в двойные кавычки (").

> Замечание: Начиная с версии PHP 4.2.1, на поведение этой функции влияет безопасный режим и open_basedir.

> Замечание: Начиная с версии PHP 5.0, эта функция также обрабатывает переводы строк в значениях.

> Замечание: Существует зарезервированные слова, которые вы не можете использовать в качестве ключей в ini-файлах. Такими словами являются следующие: null, yes, no, true и false.

Структура ini-файла похожа на структуру `php.ini`.

Константы также могут быть обработаны в ini-файле, так что если вы объявите константу в виде значения для ini-файла до вызова parse_ini_file(), она (константа) будет правильно обработана. Таким образом обрабатываются только значения. Например:

Пример 1. Содержимое `sample.ini`

    ; Это пример файла настроек
    ; Комментарии начинаются с ';', как в php.ini

    [first_section]
    one = 1
    five = 5
    animal = BIRD

    [second_section]
    path = /usr/local/bin
    URL = "http://www.example.com/~username"

Пример 2. Пример использования функции parse_ini_file()

`<?php define('BIRD', 'Dodo bird'); // Обрабатываем без секций $ini_array = parse_ini_file("sample.ini"); print_r($ini_array); // Обрабатываем с секциями $ini_array = parse_ini_file("sample.ini", true); print_r($ini_array); ?>`

Результат:

    Array
    (
        [one] => 1
        [five] => 5
        [animal] => Dodo bird
        [path] => /usr/local/bin
        [URL] => http://www.example.com/~username
    )
    Array
    (
        [first_section] => Array
            (
                [one] => 1
                [five] => 5
                [animal] = Dodo bird
            )

        [second_section] => Array
            (
                [path] => /usr/local/bin
                [URL] => http://www.example.com/~username
            )

    )

Ключи и имена секций, состоящие из цифр, будут обработаны как целые числа в PHP, поэтому числа, начинающиеся с 0 будут считаться восьмиричными, а начинающиеся с 0x - шестнадцатиричными.

Пред. | Начало | След.
move_uploaded_file | Уровень выше | pathinfo