Chris Blank: Right funktion

Hallo Miteinander

Ich suche eine funktion für PHP wie ich nur die letzten 3 zeichen eines Strings ausgeben kann.
Hab schon auf verschiedenen seiten geschaut aber nichts gefunden.
Gibt es diese funktion unter PHP überhaupt???
Bitte helft mir

Danke schonmal im vorraus.

Bye Chris

  1. Hallo,

    Ich suche eine funktion für PHP wie ich nur die letzten 3 zeichen eines Strings ausgeben kann.
    Hab schon auf verschiedenen seiten geschaut aber nichts gefunden.
    Gibt es diese funktion unter PHP überhaupt???
    Bitte helft mir

    substr("Hund", -3) gibt "und" zurück.

    Grüße, Matze

  2. Hallo!

    Hab schon auf verschiedenen seiten geschaut aber nichts gefunden.

    Hast du die offizielle Doku dabei vergessen? ;-)
    http://www.php.net/manual/de/function.substr.php hilft dir weiter.

    Gruß, Jan

    1. Hast du die offizielle Doku dabei vergessen? ;-)
      http://www.php.net/manual/de/function.substr.php

      Nein die hab ich nicht vergessen. aber ich finde sie schlecht strukuriert. wenn man nicht genau weis was man such findet es man auch nicht.
      Problem hat sich gelöst. Danke.
      Bye Chris

  3. Hallo,

    Ich suche eine funktion für PHP wie ich nur die letzten 3 zeichen eines Strings ausgeben kann.
    Hab schon auf verschiedenen seiten geschaut aber nichts gefunden.
    Gibt es diese funktion unter PHP überhaupt???
    Bitte helft mir

    ??
    Wenn ich recht verstanden hab, willst du mit einer Funktion wie substr() die letzten drei Zeichen eines Strings ausgeben...
    Einfach:

      
    $string = 'Hier steht ein ganz langer String.';  
    echo substr($string, (strlen($string)-3), 3);  
    // Ausgabe: ng.  
    
    

    MfG

    --
    How long? Not long! 'Cause what you reap, is what you sow!!!
    SELF forever
    Mein Selfcode: ie:% br:< fl:( va:) ls:< fo:} rl:( n4:~ de:> ss:} ch:| js:| mo:| sh:( zu:{
    Neuer Selfcode encoder?
    1. Moin!

      Einfach:

      $string = 'Hier steht ein ganz langer String.';
      echo substr($string, (strlen($string)-3), 3);
      // Ausgabe: ng.

        
      Wie schön, dass man auch bei einfachen Aufgaben noch so grandios viel ... Performance verschenken kann. ("Mist bauen" wollte ich jetzt nicht sagen.) :)  
        
       - Sven Rautenberg
      
      -- 
      "Love your nation - respect the others."
      
      1. Hallo,

        Wie schön, dass man auch bei einfachen Aufgaben noch so grandios viel ... Performance verschenken kann. ("Mist bauen" wollte ich jetzt nicht sagen.) :)

        :D
        ...
        Ich kannte die "andere Schreibweise" noch nich... :(
        MfG

        --
        How long? Not long! 'Cause what you reap, is what you sow!!!
        SELF forever
        Mein Selfcode: ie:% br:< fl:( va:) ls:< fo:} rl:( n4:~ de:> ss:} ch:| js:| mo:| sh:( zu:{
        Neuer Selfcode encoder?
  4. Hallo Chris,

    Ich suche eine funktion für PHP wie ich nur die letzten 3 zeichen eines Strings ausgeben kann.

    hmm,
    vielleicht so:

    <?php  
    echo substr('0123456789', -3)."\n";  
    ?>
    

    Gruss Norbert

  5. Hi Chris,

    Gibt es diese funktion unter PHP überhaupt?

    Ich überlege mir gerade, wozu du das wohl brauchen könntest… Möchtest du zufällig von einem Dateinamen die Extension haben? ;-) Also von Word.doc das doc, von test.txt das txt? Dann wäre es ungünstig, die letzten drei Buchstaben zu nehmen, da eine Datei ja z.B. auch Webseite.html heißen kann, was eine Endung von 4 Buchstaben hat.

    Um die Dateiendung auszulesen, gibt es eine praktische, fertige Funktion:

    $datei = 'Webseite.html';  
    $info = [link:http://de2.php.net/manual/de/function.pathinfo.php@title=pathinfo]($datei);  
    // gibt „html” aus:  
    echo $info['extension'];
    

    Viele Grüße,
      ~ Dennis.

    1. Hallo,

      Dann wäre es ungünstig, die letzten drei Buchstaben zu nehmen, da eine Datei ja z.B. auch Webseite.html heißen kann, was eine Endung von 4 Buchstaben hat.

      Ja und eine .htaccess hat sogar noch mehr^^
      Da frag ich mich natürlich wieder wozu man das gebrauchen kann.

      Dein Konstrukt ist denkbar ungeeignet einen Dateityp zu ermitteln.
      Für den Fall wäre eine Überprüfung des MIME-Typen sinnvoller.

      Grüße, Matze

      1. Hi Matze,

        Dein Konstrukt ist denkbar ungeeignet einen Dateityp zu ermitteln.
        Für den Fall wäre eine Überprüfung des MIME-Typen sinnvoller.

        Ich sprach auch nicht von Dateityp, sondern von Dateiendung - und zwar mit dem Bewusstsein, dass dies durchaus unterschiedlich sein kann ;-)
        Möchte man aber z.B. nur ein Icon zu einer Datei anzeigen, so ist es IHMO vollkommen ausreichend, nur die Dateiendung zu betrachten. Soll die Datei unter Sicherheitsaspekten geprüft werden, so ist natürlich der Mime-Type besser angebracht.

        Wobei die Überprüfung des Mime-Typen auch etwas schwierig wird, wenn man es korrekt machen will. Die Funktion mime_content_type() ist „decrepated”, die empfohlene Alternative der Fileinfo-Funktionen scheint nicht standardmäßig bei PHP dabei zu sein, abgesehen davon, dass seit es seit einem Jahr kein neues Release mehr gab.

        Mit system() kann man das ganze natürlich auf der Shell lösen, was aber bei etlichen Providern aufgrund von Einschränkungen schwierig werden könnte ;-)

        Viele Grüße,
          ~ Dennis.

    2. Hallo
      Das Sowas geht hätte ich nichteinmal für möglich gehalten.
      Danke für die Hilfe. Und JA es geht tatssächlich um file extensions.
      Diese können bei mir nur 3 Zeichen lang sein da es sich um M$ Office (doc, xls, pps) dreht.
      Problem hat sich damit gelöst. Danke.
      Bye Chris

      1. Hallo Chris,

        Das Sowas geht hätte ich nichteinmal für möglich gehalten.
        Danke für die Hilfe. Und JA es geht tatssächlich um file extensions.
        Diese können bei mir nur 3 Zeichen lang sein da es sich um M$ Office (doc, xls, pps) dreht.

        da bist Du auf dem falschen Dampfer. Spätestens seit Office 2007 gilt das nicht mehr, zum Beispiel:

        docx, die standardmäßige Extension von Word
        xlsx, die standardmäßige Extension von Excel
        pptx, die standardmäßige Extension von Powerpoint
        accdb, die standardmäßige Extension von Access

        und daneben noch ein paar weitere neue Extensions, die ebenfalls mehr als drei
        Zeichen aufweisen.

        Freundliche Grüße

        Vinzenz

      2. Hi,

        Problem hat sich damit gelöst. Danke.

        Dateiendungen ermittelt der Newbie in PHP mit pathinfo().

        Der Ex-Newbie verwendet, da PHP hier nicht ganz korrekt arbeitet, eine eigene Funktion. Aber für deine Zwecke wird pathinfo() ausreichen ...

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  6. Hi there,

    Gibt es diese funktion unter PHP überhaupt???
    Bitte helft mir

    function right($v,$_right){
     return substr($v,len($v) - $_right,$_right);
    }

    hope it helps...

    1. Hallo,

      Gibt es diese funktion unter PHP überhaupt???
      Bitte helft mir

      function right($v,$_right){
      return substr($v,len($v) - $_right,$_right);
      }

      Nix für ungut, aber ist es nicht irgendwie etwas kontraproduktiv, nachträglich noch eine Lösung zu posten, von der bereits im Thread gesagt wurde, dass sie nicht die einfachste ist - und zudem noch einen Tippfehler (len statt strlen) einzubauen, so dass sie auch gar nicht funktioniert?

      Viele Grüße,
      Christian

      1. Hi there,

        Nix für ungut, aber ist es nicht irgendwie etwas kontraproduktiv, nachträglich noch eine Lösung zu posten, von der bereits im Thread gesagt wurde, dass sie nicht die einfachste ist

        mag sein, ich habs nur so überflogen, in dem Sinne magst Du recht haben.

        • und zudem noch einen Tippfehler (len statt strlen) einzubauen, so dass sie auch gar nicht funktioniert?

        ja, auch da hast Du recht, (bei mir hätte es funktioniert, weil es diese Funktion gibt, aber als Tip ist es natürlich falsch)

    2. Hi,

      function right($v,$_right){
      return substr($v,len($v) - $_right,$_right);
      }

      Hast Du was gegen "return substr($v,-$_right);"?

      Gruß, Cybaer

      --
      Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!