PHP Classes

File: example.php

Recommend this page to a friend!
  Classes of Christian Vigh   Extended Ini File   example.php   Download  
File: example.php
Role: Example script
Content type: text/plain
Description: Example script
Class: Extended Ini File
Load and edit configuration INI format files
Author: By
Last change: . Added use of variable stores, which allow reference to existing variables to be specified in setting values
Date: 8 years ago
Size: 2,197 bytes
 

Contents

Class file image Download
<?php
   
/***
        This example script reads the example.ini file, updates some values, and writes back the
        results to example.out.ini.
       
        Comments and formatting are preserved ; by running the diff command on the input and output
        files, you should see the following :
       
        $ diff example.ini example.out.ini
        14c14,15
        < LastUpdate = 2015/01/01 17:40:00
        ---
        > LastUpdate = 2015/10/01 14:16:07
        > Status = 0
       
        The LastUpdate parameter was updated with the current date/time, and the Status parameter
        was added.
       
     ***/
   
require ( 'IniFile.class.php' ) ;

    if (
php_sapi_name ( ) != 'cli' )
        echo
"<pre>" ;

   
// Instanciate an IniFile object for file example.ini
   
$inifile = IniFile::LoadFromFile ( 'example.ini' ) ;

   
// Get the value of the Listen and Port parameters in the [Network] section
    // Note that you can specify a default value if the parameter is not defined
   
$listen = $inifile -> GetKey ( 'Network', 'Listen', '127.0.0.0' ) ;
   
$port = $inifile -> GetKey ( 'Network', 'Port' ) ;


   
// ... do some processing

    // Processing done : update the LastUpdate parameter of the [Results] section then
    // add the Status parameter
   
$inifile -> SetKey ( 'Results', 'LastUpdate', date ( 'Y/m/d H:i:s' ) ) ;
   
$inifile -> SetKey ( 'Results', 'Status', 0 ) ;

   
// Write the results back ; the "example.out.ini" file is specified just to give you
    // the possibility to compare the example.ini file contents before and after processing
    // You can simply write back "example.ini" by calling :
    // $inifile -> Save ( ) ;
    // Note that in our case, you can specify either "true" or "false" for the $forced parameter
    // of the Save() method ; since we have called the SetKey() method to modify parameters, the
    // .ini file contents have been flagged as 'dirty' and will automatically be saved.
   
$inifile -> Save ( true, 'example.out.ini' ) ;

    echo (
"example.ini file saved to example.out.ini, after changing the 'LastUpdate' and 'Status' settings of the [Results] section." ) ;
    echo (
"You can either edit this 'example.out.ini' file, or run the Unix diff command on both files to see the difference." ) ;