Erstes und letzte 4 Zeichen entfernen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Erstes und letzte 4 Zeichen entfernen

    Hallo, ich raff das nicht, kann mir bitte jemand sagen was ich hier falsch mache?

    Ich möchte aus einem string, das erste und die letzten 4 zeichen entfernen.
    zb soll aus
    #haushalt.csv
    haushalt
    rauskommen
    oder aus
    !gaestebuch.txt
    gaestebuch

    ich hab bestimmt nur ein kleiner fehler drin :-)
    PHP-Code:
    $pfad=files/".substr($v,1,substr($v,0,-4)); 
    ACHTUNG: RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit

  • #2
    PHP-Code:
    files
    Da stimmt doch was nicht. Oder?

    Peter

    PS: Dreh mal dein error_reporting hoch.
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      wenn der ursprüngliche Text in $v steckt , dann

      PHP-Code:
      $name=substr($v,1,strlen($v)-5); 
      Die Zählung der Position im String beginnt immer mit 0 - also 1 = 2tes Zeichen, dann brauchen wir noch die Länge ... also ursprüngliche Länge -5 (1 am Anfang 4 am Ende ) ^^

      PHP-Code:
      $pfad="files/".$name
      Zuletzt geändert von eagle275; 20.07.2010, 11:49.
      [font=Verdana]
      Wer LESEN kann, ist klar im Vorteil!
      [/font]

      Kommentar


      • #4
        Hey,

        ich würde das ganze etwas flexibler wie eagle275 machen. Was wenn mal ne Datei mit mehreren Pubkten im Dateinamen vorkommt?

        Oder die Dateiendung mal mehr als 3 Zeichen hat?

        PHP-Code:
        //string der bearbeitet werden soll
        $string "!datei.bla.blub.csv";

        //länger des gesamten strings
        $length strlen($string);

        //länge des strings nach dem letzten punkt im originalstring
        $lastLength strlen(strrchr($string'.'));

        //bearbeiteten string erstellen
        $newString substr($string1$length $lastLength 1);

        //ausgabe
        echo "files/".$newString
        Ist getestet.

        Normalerweise sollte man noch eine weitere Prüfung machen wenn es sich zum Beispiel um eine Dateiendung wie .tar.gz handelt.

        Musst du mal weiter probieren wie du das noch ausbauen kannst.

        Gruß litter
        Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
        http://www.lit-web.de

        Kommentar


        • #5
          Danke an alle, jetzt klappt das wunderbar...

          Ich hatte in meinem beispiel 2 x substr drin, da sollte als 2tes ein strlen rein :-(

          Eine einfache prüfung reicht mir, die strings haben immer ein komisches zeichen forne und eine normale windows endung mit . und 3 zeichen.

          Danke
          ACHTUNG: RamonaS zeigte ein beschämendes Verhalten in der Vergangenheit

          Kommentar


          • #6
            Zitat von RamonaS Beitrag anzeigen
            Ich hatte in meinem beispiel 2 x substr drin, da sollte als 2tes ein strlen rein :-(
            Der Befehl substr() unterstützt auch negative Zahlen, dann benötigst du kein strlen():
            PHP-Code:
            echo substr('abcdef'1, -4); 

            Kommentar

            Lädt...
            X