Export für php (Probleme utf-8)

Hallo,

für ein Projekt möchte ich mit php (LAMP) Coverbilder zu meinen mp3s hinzufügen, außerdem einige Tags modifizieren.

um einen definierten Prozess zu haben habe ich mich entschieden die Tags mit mp3tag zu exportieren und mit php dann erneut in die mp3s zu schreiben.
Als Format der Wahl habe ich JSON probiert (https://www.snip2code.com/Snippet/48593/MP3Tag-export-script-for-generating-a-JS)

Allerdings weigert sich php die von eingelesene json-Datei in ein array zuschreiben (json_decode) ich bekomme immer unexpectet Character.
Der Fehler tritt nicht auf wenn ich den Dateinhalt händisch in eine neue Textdatei speichere.

Wenn mp3tag korrekt als utf-8 speichert und ich bei php alle Encodings auf utf-8 stelle sollte ja json_encode nicht so einen Feher rausgeben oder?

Da die Tags Umlaute enthalten kommt nur UTF-8 oder UTF-16 in Frage oder? Scheinbar ist json nicht das Format der Wahl für Texte mit Umlauten?

<?php
mb_internal_encoding("UTF-8");
iconv_set_encoding("input_encoding", "UTF-8");
iconv_set_encoding("output_encoding", "UTF-8");
iconv_set_encoding("internal_encoding", "UTF-8");
$json="./mp3tag.json";
$json_txt=file_get_contents($json); // bis hier alles gut, kann den Text auch ausgeben
$album_data=json_decode($json_txt, true);
echo"json_decode():".json_last_error_msg(); // hier kommt "unexpected character"
?>

file_get_contents und php ansich mögen utf-8 nicht wirklich, aber irgendwie muss man die Daten ja einlesen...

Wie kann ich denn noch exportieren dass php es einlesen kann?

Ist dieser Thread nicht mit diesem
Export to UTF8 without BOM?
erledigt?

Hallo und danke fürs Antworten!

Da bin ich nicht sicher.
Ich bin jetzt zu csv gewechselt, und hier hat das Abschalten des BOM das Problem behoben. Allerdings war es dort auch klarer erkennbar: es wurde erfolgreich geparst aber ein Sonderzeichen hat sich in das erste Wort eingeschlichen.

von mp3tag via MTE erzeugte JSON kann ich nach wie vor nicht dekodieren

In den anderen Beitrag habe ich geantwortet um Feedback zu geben dass man nachbessern könnte (z.B. BOM-Switch in MTE integrieren oder vielleicht die Doku so anpassen dass man sie nicht so leicht missversteht.)

Gruß