Mailinglisten-Archive |
Hi Ralf, Ralf Eggert schrieb: > Ich möchte in meinen Skripten zu Beginn alle notwendigen Klassen laden. Genau. > require_once("Smarty.class.php"); // load Smarty Template Class > require_once("DB.php"); // load PEAR::DB Class > require_once("cls/website.php"); // load Website Class > > Die ersten beiden Klassen liegen immer in den selben Verzeichnissen und > werden in meiner globalen php.ini gesetzt. Die dritte Klasse liegt > jedoch je nach Projekt in einem anderen Verzeichnis. Eventuell ist dein Applikationsdesign broken. Ich würde es so machen, dass ich eine local/config.php hätte, die in einer Konstanten oder ähnliches den Verzeichnispfad der jeweiligen Installation enthält, der sich von Installation zu Installation unterscheidet. Diese(n) gebe ich an ini_set('include_path',...); weiter und das Problem ist gelöst. Du wirst ja sicherlich auch pro Installation andere DB-Connectionparameter haben, also bietet es sich an, genau da das Verzeichnis der jeweiligen Installation zu setzen. Theoretisch könnte man dann auch via require_once ABSOLUTE_LOCAL_PATH.'/cls/website.php'; arbeiten, wobei ABSOLUTE_LOCAL_PATH dann mal '/www/ich/bin/aufm/liveserver/blaprojekt' oder 'c:/irgendwo/bei/mir/daheim' ist. Allerdings bevorzuge ich lieber das dynamische Setzen des Include Pfads, da require_once 'cls/website.php'; wesentlich cleaner ist. Und wenn du ein local/ Verzeichnis hast, dann wirst du das nur genau 1x auf den Live-Server aufspielen und bei allen folgenden Uploads nicht mehr. HTH, Björn. -- ThinkPHP / Mayflower GmbH schotte at mayflower.de Sedanstraße 27 Tel: 0931 / 78 43 804 97082 Würzburg Fax: 0931 / 78 43 795 * http://www.thinkphp.de/ * http://blog.rent-a-phpwizard.de/
php::bar PHP Wiki - Listenarchive