Pfad-/Dateiinfos via PATHINFO
Um Informationen zu einem Pfad und/oder einer Datei zu erhalten, wird in PHP die Funktion PATHINFO benutzt. In meinen Lernbeispielen habe ich bislang zwei verschiedene Arten der Anwendung gefunden. Die eine erzeugt ein Array, die andere nutzt eine Variable, die einen String auf nimmt und dann ein Array daraus macht. Oder so ähnlich. Besser kann ich es nicht erklären.
Das erste Beispiel erzeugt ein Array mit 4 Elementen:
$dateiteile = pathinfo("/media/work_bilder_decode/zz_temp/105b34dd5.jpg");
echo "Das ist der erste Teil der Ausgabe:\n\n";
echo "Pfad ohne Datei: " . $dateiteile['dirname'], "\n";
echo "Dateiname komplett: " . $dateiteile['basename'], "\n";
echo "Extension: " . $dateiteile['extension'], "\n";
echo "Dateiname ohne Extension: " . $dateiteile['filename'], "\n";
Die Ausgabe hier ist:
Das ist der erste Teil der Ausgabe:
Pfad ohne Datei: /media/work_bilder_decode/zz_temp
Dateiname komplett: 105b34dd5.jpg
Extension: jpg
Dateiname ohne Extension: 105b34dd5
Das zweite Beispiel nimmt die Pfad-/Dateiangabe in eine String-Variable auf und wird erst später bei der Übernahme der 4 Bestandteile mit der PATHINFO-Funktion bestückt. Der Code sieht dann wie folgt aus:
$dateiteile2 = "/media/work_bilder_decode/zz_temp/105b34dd5.jpg";
$dir = pathinfo($dateiteile2, PATHINFO_DIRNAME);
$base = pathinfo($dateiteile2, PATHINFO_BASENAME);
$ext = pathinfo($dateiteile2, PATHINFO_EXTENSION);
$datei = pathinfo($dateiteile2, PATHINFO_FILENAME);
echo "Das ist der zweite Teil der Ausgabe:\n\n";
echo "Pfad ohne Datei: " . $dir . "\n";
echo "Dateiname komplett: " . $base . "\n";
echo "Extension: " . $ext . "\n";
echo "Dateiname ohne Extension: " . $datei . "\n";
Die Ausgabe zu dieser Codierung sieht dann so aus (nicht anders als oben).
Das ist der zweite Teil der Ausgabe:
Pfad ohne Datei: /media/work_bilder_decode/zz_temp
Dateiname komplett: 105b34dd5.jpg
Extension: jpg
Dateiname ohne Extension: 105b34dd5
Welche Art der Codierung später mal genutzt werden soll oder muss, hängt wohl davon ab, was man eigentlich erreichen möchte. Da beides zum gleichen Ergebnis führt, ist es vielleicht egal. Das wird sich später mal herausstellen müssen.
Im Moment bin ich froh, dass ich das endlich verstanden habe und nun auch anwenden kann. In Verbindung mit Dateilisten, die mittels Array bearbeitet werden, könnte diese neue Erkenntnis für meine Programmiervorhaben sehr von Vorteil sein.
Die einfache Anwendung von Arrays habe ich mitterweile auch einigermaßen gut verstanden.
Jopii, am 25.12.2021