Öffentliche Methoden | |
| __construct ($path=null, array $fileNames=array()) | |
| Konstruktor. | |
| addFileName ($fileName) | |
| Fügt einen Dateinamen hinzu. | |
| getFileNames () | |
| Gibt Dateinamen zurück. | |
| getPath () | |
| Gibt Pfad zurück. | |
| getXmlObjects ($forceReload=false) | |
| Gibt Array mit SimpleXml-Objekten zurück. | |
| setFileNames (array $fileNames) | |
| Setzt Dateinamen. | |
| setPath ($path) | |
| Setzt Pfad. | |
Geschützte Methoden | |
| _load () | |
| Geht alle XML-Dateien durch und lädt sie als SimpleXmlElement-Objekte. | |
Geschützte Attribute | |
| $_xmlObjects = array() | |
| array,XML-Objekte | |
| $_fileNames = array() | |
| array, Dateinamen (ohne .xml) | |
| $_path = null | |
| string, Pfad | |
Definiert in Zeile 9 der Datei Loader.php.
| Dsao_Xml_Loader::__construct | ( | $ | path = null, |
|
| array $ | fileNames = array() | |||
| ) |
Konstruktor.
| $path | string, Pfad zum Ordner mit XML-Dateien | |
| $fileNames | array, Dateinamen (ohne .xml) |
Definiert in Zeile 33 der Datei Loader.php.
| Dsao_Xml_Loader::_load | ( | ) | [protected] |
Geht alle XML-Dateien durch und lädt sie als SimpleXmlElement-Objekte.
Definiert in Zeile 44 der Datei Loader.php.
Wird benutzt von getXmlObjects().
00045 { 00046 // Daten zurück setzen 00047 $this->_xmlObjects = array(); 00048 00049 // Falls Verzeichnis nicht vorhanden oder nicht lesbar 00050 if (!is_dir($this->_path) || !is_readable($this->_path)) 00051 { 00052 throw new Dsao_Exception(array( 00053 'message' => 'dsao_xml_loader_path', 00054 'variables' => array('path' => $this->_path))); 00055 } 00056 00057 $fileNames = $this->_fileNames; 00058 00059 // Falls keine Dateinamen übergeben wurden 00060 if (!$fileNames) 00061 { 00062 $directory = new DirectoryIterator($this->_path); 00063 00064 // Verzeichnis durchgehen und XML-Dateien heraussuchen 00065 while ($directory->valid()) 00066 { 00067 // Falls Datei 00068 if ($directory->isFile()) 00069 { 00070 $fileNameParts = explode('.', $directory->getFileName(), 2); 00071 00072 // Falls Dateiendung vorhanden und 'xml' 00073 if (isset($fileNameParts[1]) && $fileNameParts[1] == 'xml') 00074 { 00075 $fileNames[] = $fileNameParts[0]; 00076 } 00077 } 00078 00079 $directory->next(); 00080 } 00081 } 00082 00083 // Dateien durchgehen und laden 00084 foreach ($fileNames as $fileName) 00085 { 00086 $fileNameAbsolute = $this->_path.$fileName.'.xml'; 00087 00088 // Falls Datei vorhanden 00089 if (file_exists($fileNameAbsolute)) 00090 { 00091 $this->_xmlObjects[$fileName] = simplexml_load_file($fileNameAbsolute); 00092 } 00093 } 00094 }
| Dsao_Xml_Loader::addFileName | ( | $ | fileName | ) |
Fügt einen Dateinamen hinzu.
| $fileName | string, Dateiname |
Definiert in Zeile 102 der Datei Loader.php.
| Dsao_Xml_Loader::getFileNames | ( | ) |
| Dsao_Xml_Loader::getPath | ( | ) |
| Dsao_Xml_Loader::getXmlObjects | ( | $ | forceReload = false |
) |
Gibt Array mit SimpleXml-Objekten zurück.
| $forceReload | bool, ob Neuladen erzwungen werden soll |
Definiert in Zeile 135 der Datei Loader.php.
Benutzt _load().
00136 { 00137 // Falls Daten leer oder neu geparst werden muss 00138 if (!$this->_xmlObjects || $forceReload) 00139 { 00140 $this->_load(); 00141 } 00142 00143 return $this->_xmlObjects; 00144 }
| Dsao_Xml_Loader::setFileNames | ( | array $ | fileNames | ) |
Setzt Dateinamen.
| $fileNames | array, Dateinamen |
Definiert in Zeile 152 der Datei Loader.php.
00153 { 00154 $this->_fileNames = $fileNames; 00155 00156 $this->_xmlObjects = array(); 00157 00158 return $this; 00159 }
| Dsao_Xml_Loader::setPath | ( | $ | path | ) |
Setzt Pfad.
| $path | string, Pfad |
Definiert in Zeile 167 der Datei Loader.php.
00168 { 00169 $this->_path = (string) $path; 00170 00171 // Daten zurück setzen 00172 $this->_xmlObjects = array(); 00173 00174 return $this; 00175 }
1.5.7.1