Die manuellen Zeilenumbrüch aus der App habe ich in |x| gewandelt.
Keine gute Idee. Warum und zu welchem wirklich besonderen Behufe hast Du das getan?
$newStr = str_replace("|x|", "\n", $myarray[0]);
fühlt sich irgendwie nicht korrekt an, ich kann aber gar nicht erklären, warum nicht.
Wenn das ganze Verfahren korrekt wäre, dann wäre das durchaus richtig. Die Syntax jedenfalls stimmt.
Kasus knacktus ist die fett markierte Frage.