1. 1 / 6
Caricare un file di
configurazione in PHP
Lettura del file di configurazione e
compilazione di relativo array associativo
2. 2 / 6
Il file di configurazione
● File: config.txt
● Il file di configurazione è un file di testo, per ogni
riga avremo una coppia (Chiave, Valore) separati
da “=”:
title = Titolo di prova
header = Header di prova
paragraph = Paragrafo di prova
3. 3 / 6
Funzione per la lettura del file di
configurazione
● File: config.php
La funzione getConfiguration si occupa di leggere il
file di configurazione, ricavare le coppie (Chiave,
Valore) e approntare un ooportuno array
associativo che le rappresenti.
4. 4 / 6
<?php
//Scopo:
// Legge un file di configurazione separando chiave e valore per mezzo del carattere "="
//Parametri:
// $connfFilePath: Percorso del file di configurazione
//Valore di ritorno:
// Array associativo contenente chiavi e valori estratti dal file di configurazione
function getConfiguration ($connfFilePath)
{
//Apertura del file
$conf_file = fopen ($connfFilePath, "r") or die ('Errore lettura file configurazione');
//Ciclo di lettura delle righe del file
while (!feof($conf_file))
{
//Acquisizione singola riga del file
$conf_line = fgets($conf_file);
//La riga di configurazione viene splittata in Chiave e Valore
$conf_splitted = explode("=", $conf_line);
//Controllo della presenza di Chiave e Valore
if(count($conf_splitted, COUNT_NORMAL) == 2)
{
//Aggiunta della coppia Chiave e Valore nell'array associativo
$configs[trim($conf_splitted[0])] = trim($conf_splitted[1]);
}
}
//Chiusura del file di configurazione
fclose($conf_file);
//Ritorno dell'array associativo contenente chiavi e valori estratti dal file di configurazione
return $configs;
}
5. 5 / 6
Pagina di test
● File: testconfiguration.php
Questo programma, dopo aver invocato la funzione
getConfiguration, genera una pagina HTML che
presenta gli elementi letti dal file di configurazione
config.txt
6. 6 / 6
<!DOCTYPE html>
<html>
<!--
Pagina che visualizza i parametri di configurazione letti da file di testo
-->
<head>
<title>Test lettura file di configurazione</title>
</head>
<body>
<?PHP
//Inclusione del file contenente la funzione getConfiguration
require("./config.php");
//Lettura del file di configurazione
$config=getConfiguration ("./config.txt");
//Acquisizione parametri di configurazione
$title = $config["title"];
$paragraph = $config["paragraph"];
//Output dei parametri di configurazione
echo "<h3>$title</h3>";
echo "<p>$paragraph</p>";
?>
</body>
</html>
7. 6 / 6
<!DOCTYPE html>
<html>
<!--
Pagina che visualizza i parametri di configurazione letti da file di testo
-->
<head>
<title>Test lettura file di configurazione</title>
</head>
<body>
<?PHP
//Inclusione del file contenente la funzione getConfiguration
require("./config.php");
//Lettura del file di configurazione
$config=getConfiguration ("./config.txt");
//Acquisizione parametri di configurazione
$title = $config["title"];
$paragraph = $config["paragraph"];
//Output dei parametri di configurazione
echo "<h3>$title</h3>";
echo "<p>$paragraph</p>";
?>
</body>
</html>