Es kommt manchmal vor, dass beim Ausführen eines Codes auf Festplattenbereiche oder Webseiten zugegriffen werden muss. Dafür wird meistens ein kompletter Pfad eingelesen, oder vom Anwender eingegeben. Diesen kompletten Pfad muss man allerdings in manchen Fällen getrennt verarbeiten. In diesem Tutorial soll erklärt werden, wie Sie den Dateinamen aus einer vollständigen Pfadangabe herauslesen lassen können.
Ein Anwendungsbeispiel für diese Funktion wäre, wenn man barrierefrei auf verschiedenen Systemen arbeiten und dafür die Gefahr der Syntax umgehen will, denn unter Windows werden sowohl Slash "/" als auch Backslash "", als Trennzeichen bei Pfadangaben benutzt. Anderen Betriebssysteme nutzen dahingegen nur der Slash "/". Für diese Sorge gibt es die Funktion basename() mit der man aus einem Pfad den letztendlichen Dateinamen auslesen kann.
Beispiel:
<?php
/*
* Created on 24.01.2010 by Nico Schubert
*/
$pfad = '/var/test/test.php';
$dateiname = basename($pfad);
echo 'Der Dateiname von den Pfad "'.$pfad.'" ist
"'.$dateiname.'".';
?>
Ausgabe:
Der Dateiname von den Pfad "/var/test/test.php" ist „test.php“.
Erklärung:
In der Variable $pfad ist der vollständige Pfad hinterlegt, der die Ausgangssituation darstellt. Danach wird als zweite Variable $dateiname, mit der Funktion basename(), der tatsächliche Dateiname aus der Variable $pfad entnommen und festgelegt. Zum Schluss wird mit dem Befehl echo und den beiden Variablen obige Ausgabe erzeugt.
Anmerkung:
Neben der Funktion baseneme() gibt es auch die Funktion dirname(), die dazu dient den Pfad und nicht den Dateinamen auszulesen. Damit wäre das auslesen eines vollständigen Pfades zur getrennten Verarbeitung im Code perfekt.