Habe mal eine kleine, aber wie ich find feine Klasse für das automatische Includen von Files geschrieben, und wollte euch die mal nicht vorenthalten.
Man gibt nun einfach an in welchem Ordner sich die Dateien befinden und diese werden automatisch eingebunden, somit spaart man sich das lästige manuelle includen.
PHP-Code:
<?
/* BSP INCLUDE */
$files = new autoinclude;
$files->add_include_path("config/class/");
$files->autoinclude();
/*KLASSE*/
class autoinclude
{
private $pfad = array();
public function autoinclude($report = false)
{
foreach($this->pfad AS $path)
{
$includes = opendir ($path);
while ( $includefile = readdir ( $includes ) )
{
if((is_file($path.$includefile)) && ($includefile != 'autoinclude.class.php'))
{
if($report)
{
echo' Die Datei <b>'.$includefile.'</b> wurde eingebunden<br>';
}
include($path.$includefile);
}
}
closedir ($includes);
}
}
public function add_include_path($new_path)
{
$this->pfad[$new_path] = $new_path;
}
public function show()
{
print_r($this->pfad);
}
}
?>
EDIT: Achja man kann die Klasse natürlich um Namespaces erweitern, so dass nur Dateien eingebunden werden die z.B. mit "inc_" beginnen.
Habe ich aber ersteinmal weggelassen, da ich es nicht benötige.
Und und bei der Methode autoinclude() kann man als Parameter true übergeben (autoinclude(true)), somit bekommt man nochmals angezeigt welche Files eingebunden wurden.