Maison > développement back-end > tutoriel php > Comment lire, écrire et modifier des fichiers INI en PHP ?

Comment lire, écrire et modifier des fichiers INI en PHP ?

Mary-Kate Olsen
Libérer: 2024-10-28 20:16:31
original
1011 Les gens l'ont consulté

How to Read, Write, and Modify INI Files in PHP?

Lecture et écriture de fichiers INI en PHP

Parse_ini_file est couramment utilisé pour lire des fichiers INI en PHP. Pour lire un fichier INI :

<code class="php">$ini_array = parse_ini_file("sample.ini");
print_r($ini_array);</code>
Copier après la connexion

Pour accéder à des valeurs spécifiques :

<code class="php">echo $ini_array['lu_link'];
echo $ini_array['footerbg'];</code>
Copier après la connexion

La réécriture dans le fichier INI nécessite une fonction personnalisée :

<code class="php">function write_php_ini($array, $file)
{
    $res = [];
    foreach ($array as $key => $val) {
        if (is_array($val)) {
            $res[] = "[$key]";
            foreach ($val as $skey => $sval) {
                $res[] = "$skey = ".(is_numeric($sval) ? $sval : '"'.$sval.'"');
            }
        } else {
            $res[] = "$key = ".(is_numeric($val) ? $val : '"'.$val.'"');
        }
    }
    safefilerewrite($file, implode("\r\n", $res));
}</code>
Copier après la connexion

Safefilerewrite garantit un accès exclusif aux fichiers à l'aide de flock :

<code class="php">function safefilerewrite($fileName, $dataToSave)
{
    if ($fp = fopen($fileName, 'w')) {
        $startTime = microtime(TRUE);
        do {
            $canWrite = flock($fp, LOCK_EX);
            if (!$canWrite) {
                usleep(round(rand(0, 100) * 1000));
            }
        } while ((!$canWrite) && ((microtime(TRUE) - $startTime) < 5));

        if ($canWrite) {
            fwrite($fp, $dataToSave);
            flock($fp, LOCK_UN);
        }
        fclose($fp);
    }
}</code>
Copier après la connexion

Exemple d'utilisation :

<code class="php">$ini_array = parse_ini_file("sample.ini");

$ini_array['lu_link'] = '#F00';
$ini_array['footerbg'] = '#FFF';

write_php_ini($ini_array, "sample.ini");</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal