Ich hab die ganze Zeit das Gefühl, in Kreisen um die Lösung herum zu rennen.
Genau aus dem Grund gab' es von mir auch den Hinweis, zuerst das Problem auf HTML-Seiten zu beheben.
Wenn das HTML-Problem gelöst ist, kann man sich Gedanken darüber machen, wie man PHP dazu bringt, den richtigen Code auszuspucken. In diese Richtung ist es imho wesentlich einfacher.
Aktuell versuchst du Escaping in PHP zu verstehen, hast aber noch nicht ganz verstanden, wie das überhaupt in HTML funktioniert.
Beispiel:
<span title="ein einfaches ' mit VARIABLER WERT gefolgt von einem doppelten "" onclick="alert('Hier folgt ein einfaches Anführungszeichen \');">foo</span>
Dies jetzt in PHP zu escapen, wenn man es denn per Echo ausgibt wird dann schon "reichlich kompliziert".
echo "<span title=\"ein einfaches ' mit " . $variabler['wert' . " gefolgt von einem doppelten "\" onclick=\"alert('Hier folgt ein einfaches Anführungszeichen \');\">foo</span>";
Genau aus dem Grund kam auch molily hinweis, auf echo zu verzichten, weil man sich damit das lästige Maskieren spart und der Code besser lesbar ist.