Abfrage des Dateinamens des aktuellen Skripts in PHP

Shraddha Paghdar 29 November 2021
PHP
Abfrage des Dateinamens des aktuellen Skripts in PHP

Ihr Skript benötigt möglicherweise den aktuellen Dateinamen mit dem Verzeichnisnamen, in dem es gerade ausgeführt wird. In diesem Tutorial-Artikel besprechen wir, wie Sie den Dateinamen des aktuellen Skripts im Projekt abrufen.

PHP bietet verschiedene Möglichkeiten, den aktuellen Dateinamen herauszufinden. Zuerst werden wir alle Parameter & Methoden kurz verstehen und dann kombinieren, um das Ergebnis zu erhalten.

  • __FILE__:

    PHP bietet 9 magische Konstanten, die je nach Verwendung verwendet werden. Diese Konstanten werden von verschiedenen Erweiterungen erstellt. Alle diese Konstanten werden während der Kompilierzeit aufgelöst. __FILE__ ist eine dieser magischen Konstanten, die Ihnen den Dateisystempfad zur aktuellen .php-Datei angibt.

  • $_SERVER:

    $_SERVER ist ein Array, das Informationen über Header, Pfade und Skriptspeicherorte enthält. Der Webserver erstellt all diese Informationen.

  • PHP_SELF:

    PHP_SELF ist eine Variable, die verwendet wird, um den Dateinamen des aktuell ausgeführten Skripts zu erhalten. Es ist relativ zum Dokumentenstamm. Wenn der Benutzer diesen Befehl in der Befehlszeile ausführt, werden die Informationen zum Skriptnamen gedruckt.

  • SCRIPT_FILENAME:

    Dies ist eine Variable, die verwendet wird, um den Dateinamen des aktuell ausgeführten Skripts zu erhalten, und der einzige Unterschied besteht darin, dass der Pfad absolut ist.

  • SCRIPT_NAME:

    Es enthält den Pfad des aktuellen Skripts. Dies ist nützlich für Seiten, die auf sich selbst verweisen müssen.

  • REQUEST_URI:

    Die URI wurde angegeben, um auf den Standort der Seite zuzugreifen, zum Beispiel /index.html.

Lassen Sie uns nun alle oben genannten Befehle zusammen verwenden, um den Dateinamen zu erhalten.

  1. $_SERVER['SCRIPT_NAME']:

    Ein übergeordneter Dateiname mit einer Dateierweiterung

  2. $_SERVER['PHP_SELF']:

    Relative URL der übergeordneten Datei mit der Dateierweiterung. Beispiel: http://example.com/parentFolder/child.php wäre /parentFolder/child.php.

  3. $_SERVER['SCRIPT_FILENAME']:

    vollständige URL der übergeordneten Datei mit einer Dateierweiterung

  4. $_SERVER['REQUEST_URI']:

    Name des übergeordneten Ordners mit

Die eingebaute PHP-Funktion basename() gibt den Basisnamen einer Datei zurück, wenn der Pfad der Datei als Parameter an die Funktion basename() übergeben wird.

  1. basename(__FILE__):

    Aktueller Dateiname mit PHP-Dateierweiterung.

  2. basename(__FILE__, '.php'):

    Aktueller Dateiname ohne PHP-Dateierweiterung.

  3. basename($_SERVER['PHP_SELF'], ".php"):

    Aktueller Dateiname ohne PHP-Dateierweiterung.

  4. basename($_SERVER['PHP_SELF']):

    Aktueller Dateiname mit PHP-Dateierweiterung.

  5. pathinfo(__FILE__, PATHINFO_FILENAME):

    Aktueller Dateiname ohne PHP-Dateierweiterung.

Beispielcode zum Abrufen des aktuellen Skriptdateinamens in PHP

<?php
echo "\$_SERVER['SCRIPT_NAME']: ";
echo $_SERVER['SCRIPT_NAME'];
echo "\n";

echo "\$_SERVER['PHP_SELF']: ";
echo $_SERVER['PHP_SELF'];
echo "\n";

echo "\$_SERVER['SCRIPT_FILENAME']: ";
echo $_SERVER['SCRIPT_FILENAME'];
echo "\n";

echo "basename(__FILE__): ";
echo basename(__FILE__);
echo "\n";

echo "basename(__FILE__, '.php'): ";
echo basename(__FILE__, '.php');
echo "\n";

echo "basename(\$_SERVER['PHP_SELF'], '.php'): ";
echo basename($_SERVER['PHP_SELF'], '.php');
echo "\n";

echo "basename(\$_SERVER['PHP_SELF']): ";
echo basename($_SERVER['PHP_SELF']);
echo "\n";

echo "pathinfo(__FILE__, PATHINFO_FILENAME): ";
echo pathinfo(__FILE__, PATHINFO_FILENAME);
echo "\n";
?>

Ausgabe:

Holen Sie sich den aktuellen Skriptdateinamen in PHP

Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn