Maresa P.: String von hinten (behandeln)

Hallo,

ich trenne einen String, der den Namen einer mittels HTTP Formular hichgeladenen Datei enthält beim Punkt in $datei und in $endung.
Dies mach ich mit folgenden Befehlen:

list($datei,$endung)= split (".", $HTTP_POST_FILES['datei']['name']);

Nun hab ich aber ein Problem, wenn im Dateinamen noch ein Punkt vorkommt. Also z.B.: datei.name.pdf
In diesem Fall wrde ich dann folgendes zurückgbekommen:

$datei == "datei"
$endung = "name"

Dies ist natürlich nicht richtig.

Frage: Wie schaffe ich es, dass er beim ersten Punkt _von hinten_ trennt?

Vielen Dank

MAresa

  1. hi,

    Frage: Wie schaffe ich es, dass er beim ersten Punkt _von hinten_ trennt?

    zum beispiel, in dem du zuerst mal dessen position ermittelst (http://www.php.net/manual/de/function.strrpos.php), und dann dort mit substr() o.ä. trennst.

    btw: wenn du dir das kapitel über stringfunktionen im manual angesehen hättest, hättest du mit ein bisschen phantasie aber auch gut selber auf einen lösung kommen können ...

    gruss,
    wahsaga

  2. Hallo Maresa,

    Frage: Wie schaffe ich es, dass er beim ersten Punkt _von hinten_ trennt?

    Schau dir mal strrchr() an, das dürfte helfen.
    Oder du baust dir ein Array und lässt dir das letzte Element als Endung und
    die anderen Teile aneinander hereiht als Dateinamen zurück geben.

    Grüße
      David

    --
    >>Nobody will ever need more than 640k RAM!<<
    1981 Bill Gates