Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Umlaute Ausgabe falsch mit substr

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Umlaute Ausgabe falsch mit substr

    Hallo Experten

    ich habe jede Menge im Web zum Thema gefunden, aber nichts löst mein Problem (oder ich verstehe es einfach nicht)

    Ich habe ein info.txt - Datei mit einem Datensatz "1A2B3ä4ß5xyz"

    PHP-Code:
     $database ='./info.txt';
     if(
    filesize($database) > 0)
       {
           
    $datei file($database);
            
    $a 0;
            
    $info $datei[$a];
        echo 
    $info;
        echo 
    substr($info,2,1);
        echo 
    substr($info,5,1);
       } 
    Ausgabe:

    1A2B3ä4ß5xyz
    A


    Mein Frage ist nun, warum wird bei Selektierung (substr) das Zeichen "ä" falsch ausgegeben und wenn ich den ganzen String ausgebe stimmt alles. Ich muss einzelne Zeichen selektieren und ausgeben auch wenn es Sonderzeichen sind, wie mach ich das ????

    mfg eem monarch

  • #2
    [MAN]mb_substr[/MAN]

    Das Problem sind, das Umlaute (je nach Encoding) mehr als 1 Byte benötigen, bei UTF-8 z.B. 2 Byte. Mit substr() trennst du dann aber die zwei, eigentlich zusammengehörigen, Bytes und es kommt ein falsches Zeichen raus.

    Kommentar


    • #3
      Ich würd' einfach mal auf Kodierungsproblem tippen.
      Stell alles auf UTF-8, dann klappt das, so wie Du das hast...
      Competence-Center -> Enjoy the Informatrix
      PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

      Kommentar


      • #4
        Danke Tropi !!! funzt

        Kommentar

        Lädt...
        X