kostenloser Webspace werbefrei: lima-city


utf-8 bom in json file?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    soboo

    soboo hat kostenlosen Webspace.

    Hallo

    ich möchte eine JSON Datei auslesen,,
    aber am Anfang der Datei steht ein UTF8 BOM (Byte Order Mark)
    


    JSON Daten müssen ja in UTF-8 vorliegen, aber muss das BOM sein ?!?

    damit funktioniert json_decode() nicht, also die String-Daten in Objekt holen

    header("Content-Type: text/html; charset=utf-8");
    
    $jstring = file_get_contents($jfile); 
    
    $jdata = json_decode($jstring); 
    
    echo "<pre>\n"; 
    print_r($jdata); 
    echo "</pre>\n";

    ich bekomme damit keinen Inhalt ..... $jdata bleibt leer

    ... auch wenn ich vorher einen UFT-8 header setze, keine Daten

    wenn ich diesen BOM mit str_replace entferne, dann geht es
    $jstring = str_replace('','',$jstring);

    dann bekomme ich wie gewünscht die JSON Daten als Objekt
    ... aber das ist wohl nicht die "sauberste" Lösung ?!

    Frage 1:
    gehört das BOM da rein?
    sollte derjenige, der die JSON Datei erstellt es mit oder ohne BOM ausliefern ?

    Frage 2:
    wenn mit BOM ok (normal) ist,
    wie komme ich "eleganter" an die Daten ohne mein str_replace() ?

    Danke!
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Zu Frage 2: Link
    Ich glaube da ist dabei was du suchst!
  4. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!