jobo: Codeausschnittverständnis in Fuel/Kohana-Framework

Beitrag lesen

Hallo,

aus der index.php bei Fuel-Framework:

  
// Use an anonymous function to keep the global namespace clean  
call_user_func(function() {  
  
	/**  
	 * Set all the paths here  
	 */  
	$app_path		= '../fuel/app/';  
	$package_path	= '../fuel/packages/';  
	$core_path		= '../fuel/core/';  
  
  
	/**  
	 * Website docroot  
	 */  
	define('DOCROOT', __DIR__.DIRECTORY_SEPARATOR);  
  
	( ! is_dir($app_path) and is_dir(DOCROOT.$app_path)) and $app_path = DOCROOT.$app_path;  
	( ! is_dir($core_path) and is_dir(DOCROOT.$core_path)) and $core_path = DOCROOT.$core_path;  
	( ! is_dir($package_path) and is_dir(DOCROOT.$package_path)) and $package_path = DOCROOT.$package_path;  
  
	define('APPPATH', realpath($app_path).DIRECTORY_SEPARATOR);  
	define('PKGPATH', realpath($package_path).DIRECTORY_SEPARATOR);  
	define('COREPATH', realpath($core_path).DIRECTORY_SEPARATOR);  
  
});  

Nicht ganz klar ist mir die Zeile:

  
( ! is_dir($app_path) and is_dir(DOCROOT.$app_path)) and $app_path = DOCROOT.$app_path;  

  
Bei Kohana steht da stattdessen:  
  
056	// Set the full path to the docroot  
057	define('DOCROOT', realpath(dirname(__FILE__)).DIRECTORY_SEPARATOR);  
058	  
059	// Make the application relative to the docroot  
060	if ( ! is_dir($application) AND is_dir(DOCROOT.$application))  
061	    $application = DOCROOT.$application;  

Es soll ja der Pfad deklariert werden. Wenn der angegebene Pfad kein Verzeichnis ist aber die Kombination DOCROOT (absoluter Pfad plus Verzeichnistrennzeichen) mit dem Pfad ein Verzeichnis ist, dann setze den absoluten Pfad. Was aber wenn beides nicht zutrifft? Und wie kann es sein, dass der Pfad zwar relativ nicht stimmt aber absolut schon, wo zur absoluten Pfadbestimmung doch die Position des Scriptes selbst herangezogen wird? Irgendein Groschen klemmt da bei mir.

Gruß

jobo