Dateiendung und Verzeichnisname aus Scriptausgabe entfernen
Hallo zusammen,
ich möchte gerne in einem bereits vorhanden Script das
Verzeichnis und die Dateiendung in der Ausgabe entfernen.
Zum Beispiel so
Handbuecher/Testhandbuch.pdf
in
Testhandbuch
Die Endung ist kein Problem für mich,
aber Endung & Verzeichnis zusammen schon,
da ich wohl beim Aufbau irgendwelche Fehler mache.
Ich weiß, dass es zu diesem Thema viel im Internet zu finden gibt,
aber leider nicht wie ich es auf mein
Script bezogen anwenden muss.
MFG Martin Breuer
ich möchte gerne in einem bereits vorhanden Script das
Verzeichnis und die Dateiendung in der Ausgabe entfernen.
Zum Beispiel so
Handbuecher/Testhandbuch.pdf
in
Testhandbuch
Die Endung ist kein Problem für mich,
aber Endung & Verzeichnis zusammen schon,
da ich wohl beim Aufbau irgendwelche Fehler mache.
Ich weiß, dass es zu diesem Thema viel im Internet zu finden gibt,
aber leider nicht wie ich es auf mein
Script bezogen anwenden muss.
MFG Martin Breuer
<?php
$files = glob('Handbuecher/*.pdf');
echo '
<div align="center">
<table border="1" width="270" cellspacing="0" cellpadding="0" height="28">
<tr>
<td bgcolor="#FFFFFF" bordercolor="#FFFFFF" width="100%" align="center">
<font size="2" face="Arial">Dateiname</font></td>
</tr>
</table>
</div>
';
foreach($files as $file)
{
echo '
<div align="center">
<table border="1" width="270" cellspacing="0" cellpadding="0" height="28">
<tr>
<td bgcolor="#F7F7F7" bordercolor="#FFFFFF" width="77%" align="left">
<font size="2" face="Arial"><a style="text-decoration:none" href="'.$file.'"> '.$file.'</a></font></td>
</tr>
</table>
</div>
';
}
?>
Please also mark the comments that contributed to the solution of the article
Content-Key: 288013
Url: https://administrator.de/contentid/288013
Printed on: April 27, 2024 at 01:04 o'clock
8 Comments
Latest comment
Moin.
Hiermit kommst du in deiner Schleife an den 'Basename' der Datei ohne Extension.
http://php.net/manual/de/function.pathinfo.php
Gruß grexit
Hiermit kommst du in deiner Schleife an den 'Basename' der Datei ohne Extension.
echo pathinfo($file,PATHINFO_FILENAME);
http://php.net/manual/de/function.pathinfo.php
Gruß grexit
einfach so:
in $file ist der dateiname,
weil nicht erkennlich ist, ob windows oder linux,
zuerst einen replace des $file von backslash zu slash ( \ zu / )
dann einen explode. ( $x = explode ( $file, "/" ))
es folgt:
$dateiname = array_pop ( $x );
jetzt ist in dateiname nur noch der dateiname ohne verzeichnis.
die extension geht so weg
$x = explode ( $dateiname , ":" )
$name = array_shift ( $x )
und damit es ins script passt
$file = $name
auf zeile 19 einfuegen
OT:
( dieser text wurde mit google translater uebersetzt und danke fuer den hinweis ( codetag ), kannte ich nicht,)
in $file ist der dateiname,
weil nicht erkennlich ist, ob windows oder linux,
zuerst einen replace des $file von backslash zu slash ( \ zu / )
dann einen explode. ( $x = explode ( $file, "/" ))
es folgt:
$dateiname = array_pop ( $x );
jetzt ist in dateiname nur noch der dateiname ohne verzeichnis.
die extension geht so weg
$x = explode ( $dateiname , ":" )
$name = array_shift ( $x )
und damit es ins script passt
$file = $name
auf zeile 19 einfuegen
OT:
( dieser text wurde mit google translater uebersetzt und danke fuer den hinweis ( codetag ), kannte ich nicht,)
Zitat von @Martin-BR:
Sorry aber kannst du das nochmal genauer erklären ?
Ich bekomm jetzt zwar nicht mehr das Verzeichnis angezeigt aber immer noch die Endung.
Was mache ich falsch ?
Sorry zurück, die Konstante war falsch... das kommt wenn man mit mehreren Sprachen hantiert. Ist aber bei PHP auch missverständlich denn in jeder anderen Sprache bedeutet "Basename" -> Dateiname ohne Suffix, aber nö PHP nennt es genau umgekehrt...Sorry aber kannst du das nochmal genauer erklären ?
Ich bekomm jetzt zwar nicht mehr das Verzeichnis angezeigt aber immer noch die Endung.
Was mache ich falsch ?
ist oben korrigiert.
Gruß grexit
p.s. ab und zu mal in die Doku schauen dann hättest du es auch selber rausgefunden