Manuel PHP
Précédent |  | Suivant

# parse_ini_file

(PHP 4 , PHP 5)

parse_ini_file -- Traite un fichier de configuration

## Description

array parse_ini_file ( string filename [, bool process_sections])

parse_ini_file() charge le fichier `filename` et retourne les configurations qui s'y trouvent sous forme d'un tableau associatif. En passant le deuxième paramètre optionnel à `process_sections`, vous obtiendrez un tableau multi-dimensionnel avec les noms des sections. La valeur par défaut de ce paramètre est `FALSE`

> Note : Cette fonction n'a rien a voir avec le fichier `php.ini`. Ce dernier a déjà était traité lorsque vous commencez a exécuter votre script. Cette fonction peut vous permettre de lire vos propres fichiers de configuration.

La structure des fichiers de configuration lus est similaire à celle de `php.ini`.

> Note : Si une valeur du fichier .ini contient des données non alphanumériques, il faut la protéger en la plaçant entre guillemets doubles (").

> Note : Depuis `PHP` 4.2.1 cette fonction est aussi affectée par le safe mode et open_basedir.

La structure du fichier .ini est similaire à celle du fichier `php.ini`.

Les constantes peuvent aussi être utilisées dans le fichier .ini, ce qui fait que si vous définissez une constante avant d'exécuter parse_ini_file(), elle sera intégrée dans les résultats. Seules les valeurs de configuration sont remplacées par leur équivalent en constantes. Par exemple :

Exemple 1. Contenu de exemple.ini

    ; Ceci est un fichier de configuration
    ; Les commentaires commencent par ';', comme dans php.ini

    [premiere_section]
    un = 1
    cinq = 5
    animal = oiseau

    [seconde_section]
    chemin = /usr/local/bin
    URL = "http://www.exemple.com/~utilisateur"

Exemple 2. Exemple avec parse_ini_file()

    <?php

    define ('oiseau', 'dodu dodo');

    // Analyse sans les sections
    $ini_array = parse_ini_file("exemple.ini");
    print_r($ini_array);

    // Analyse avec les sections
    $ini_array = parse_ini_file("exemple.ini", TRUE);
    print_r($ini_array);

    ?>

Cet exemple va produire :

    Array
    (
        [un] => 1
        [cinq] => 5
        [animal] => dodu dodo
        [chemin] => /usr/local/bin
        [URL] => http://www.example.com/~username
    )
    Array
    (
        [premiere_section] => Array
            (
                [un] => 1
                [cinq] => 5
                [animal] => dodu dodo
            )

        [seconde_section] => Array
            (
                [chemin] => /usr/local/bin
                [URL] => http://www.exemple.com/~utilisateur
            )

    )

Précédent | Sommaire | Suivant
move_uploaded_file | Niveau supérieur | pathinfo