fastix®: In zu inkludierender Datei prüfen, welche Datei inkludieren will

Beitrag lesen

Moin!

Schau Dir das  Folgende an (starte caller.php) und ziehe Deine Schlüsse:

<?php

caller.php

$lnbr="  <br />\n";

print "caller.php:$lnbr";
print "__FILE__: " . __FILE__ . $lnbr;
print "$_SERVER['SCRIPT_FILENAME']: ' . $_SERVER['SCRIPT_FILENAME'] . $lnbr;
include 'inc.php';
?>

<?php

inc.php

$lnbr="  <br />\n";

print "inc.php:$lnbr";
print "__FILE__: " . __FILE__ . $lnbr;
print "$_SERVER['SCRIPT_FILENAME']: ' . $_SERVER['SCRIPT_FILENAME'] . $lnbr;
?>

Du kannst im übrigen nur prüfen, welche Datei includiert _hat_.

Bei tieferen Strukturen (include ruft include) geht das natürlich nicht so einfach. Wende dann den Tipp mit der selbst definierten Konstante (s. Hopsel) oder debug_backtrace (s. Dedlfix) an.

Über "Magische Konstanten": http://php.net/manual/de/language.constants.predefined.php

MFFG (Mit freundlich- friedfertigem Grinsen)

fastix