2 /******************************************************
3 * ©2006 copyrights by RE-Desgin (www.re-design.de) *
4 * Author: Enrico Reinsdorf (enrico@.re-design.de) *
5 * Modified: 2006-01-16 *
6 ******************************************************/
10 var $_iniFilename = '';
11 var $_iniParsedArray = array();
14 * erstellt einen mehrdimensionalen Array aus der INI-Datei
16 function iniParser( $filename )
18 $this->_iniFilename
= $filename;
19 if($this->_iniParsedArray
= parse_ini_file( $filename, true ) ) {
27 * gibt die komplette Sektion zurück
29 function getSection( $key )
31 return $this->_iniParsedArray
[$key];
35 * gibt einen Wert aus einer Sektion zurück
37 function getValue( $section, $key )
39 if(!isset($this->_iniParsedArray
[$section])) return false;
40 return $this->_iniParsedArray
[$section][$key];
44 * gibt den Wert einer Sektion oder die ganze Section zurück
46 function get( $section, $key=NULL )
48 if(is_null($key)) return $this->getSection($section);
49 return $this->getValue($section, $key);
53 * Seta um valor de acordo com a chave especificada
55 function setSection( $section, $array )
57 if(!is_array($array)) return false;
58 return $this->_iniParsedArray
[$section] = $array;
62 * setzt einen neuen Wert in einer Section
64 function setValue( $section, $key, $value )
66 if( $this->_iniParsedArray
[$section][$key] = $value ) return true;
70 * setzt einen neuen Wert in einer Section oder eine gesamte, neue Section
72 function set( $section, $key, $value=NULL )
74 if(is_array($key) && is_null($value)) return $this->setSection($section, $key);
75 return $this->setValue($section, $key, $value);
79 * sichert den gesamten Array in die INI-Datei
81 function save( $filename = null )
83 if( $filename == null ) $filename = $this->_iniFilename
;
84 if( is_writeable( $filename ) ) {
85 $SFfdescriptor = fopen( $filename, "w" );
86 foreach($this->_iniParsedArray
as $section => $array){
87 fwrite( $SFfdescriptor, "[" . $section . "]\n" );
88 foreach( $array as $key => $value ) {
89 fwrite( $SFfdescriptor, "$key = $value\n" );
91 fwrite( $SFfdescriptor, "\n" );
93 fclose( $SFfdescriptor );