För att läsa in en ini fil i PHP använder man:
$ini_array = parse_ini_file("thefile.ini", true);
Detta innebär att $ini_array innehåller hela inifilen i en tvådimentionell array. Där varje kategori är första dimentionen och varje setting är andra dimentionen. Så en ini-fil med strukturen:
[settings]
color=4
files=3
[pages]
pages=sida1,enannansida,konster
[sida1]
bakgrund=ff00ff
content=Denna sida är inte riktigt klar.
Kommer se ut såhär i PHP när vi läst in den:
$ini_array[settings][color]=4
$ini_array[settings][files]=3
$ini_array[pages][pages]=sida1,enannansida,konster
$ini_array[sida1][bakgrund]=ff00ff
$ini_array[sida1][content]=Denna sida är inte riktigt klar.
Det finns tyvärr ingen write_ini_file metod så när vi skriver ned filen måste vi tolka datan i vår array. Det finns en standard lösning på detta som loopar igenom alla 'sections' altså dimention1 och sedan går igenom alla 'keys' dimantion2 i arrayen. och skriver ned dem.
$new_ini_content = '';
foreach ($ini_array as $section => $values) {
// Skapar sektionen
$new_ini_content .= "[$section]\n";
foreach ($values as $key => $value) {
// Skriver ned alla värden
$new_ini_content .= "$key = \"$value\"\n";
}
$new_ini_content .= "\n";
}
file_put_contents("thefile.ini", $new_ini_content);