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
976 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!

source:php.cn
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