Thema: include_path für file-funktionen
hallo! nach langer auszeit werd ich jetzt auch mal wieder (allerdings unter anderem benutzernamen) in diesem forum aktiv. und zwar mit einer vielleicht etwas speziellen frage.
mein problem: aufgrund einer etwas fragwürdigen server-struktur kann sich der absolute pfad zu einer datei ändern, das script sollte ungeachtet dessen dennoch über die selbe pfad-angabe abhängig vom include-pfad auf files zugreifen können.
file(), readfile() und fopen() haben ja schon den optionalen parameter $use_include_path vorgesehen, andere funktionen wie zb file_exists() oder getimagesize() allerdings nicht. jetzt meine idee: ich schreib mir eine nette kleine function:
<?php
function myFileHandler($datei, $funktion) {
$incPfade = explode (':', ini_get ('include_path')); // liefert die include-pfade aus der php.ini als array
foreach ($incPfade as $pfad) {
$thisDatei = $pfad.'/'.$datei;
if (file_exists ($thisDatei)) {
return $funktion ($datei); // führt die gewünschte funktion mit der datei aus und gibt den wert zurück
}
}
}
myFileHandler('htdocs/datei.jpg', 'getimagesize'); // = getimagesize('htdocs/datei.jpg');
?>funktioniert eigentlich ganz gut, aber ich frag mich, ob's da nicht eine sauberere und geschicktere lösung gibt und wie's da mit dem geschwindigkeits-nachteil aussieht...
danke im voraus für euren input...