test</body></html>"; $html = qp($html, "#a" )->text("å")->top()->html();//results in disappearing"> test</body></html>"; $html = qp($html, "#a" )->text("å")->top()->html();//results in disappearing"> test</body></html>"; $html = qp($html, "#a" )->text("å")->top()->html();//results in disappearing" />

Utf-8-tekens gebruiken met QueryPath en HTML

I'm trying to use QueryPath to manipulate HTML in PHP. It works fine until certain utf-8 characters are used along with the ->html() and ->text() methods. Even using html-characters doesn't solve the problem.

Problematisch voorbeeld:

$html = "<html><body id='a'>test</body></html>";
$html = qp($html, "#a" )->text("å")->top()->html();//results in disappearing html code
//$html = qp($html, "#a" )->html("å")->top()->html();//generates warnings
echo $html

Ik heb een groot aantal combinaties geprobeerd zonder succes.

Als ik de tweede regel becommentarieer en het derde commentaar weghaal, krijg ik de volgende waarschuwingen: Waarschuwing: DOMDocumentFragment :: appendXML (): Entiteit: regel 1: parserfout: Entiteit 'aring' niet gedefinieerd in D: \ Inetpub \ wwwroot \ QueryPath-2.1.2-minimal \ QueryPath.php op regel 1208 Waarschuwing: DOMDocumentFragment :: appendXML (): å in D: \ Inetpub \ wwwroot \ QueryPath-2.1.2-minimal \ QueryPath.php op regel 1208 Waarschuwing: DOMDocumentFragment :: appendXML (): ^ in D: \ Inetpub \ wwwroot \ QueryPath-2.1.2 -minimal \ QueryPath.php op regel 1208

1
het antwoord is nee, zoals 3 minuten eerder beantwoord dan je reactie =)
toegevoegd de auteur Robin Manoli, de bron
De voor de hand liggende vraag is: is al uw UTF-8-stapel correct? Broncode wordt opgeslagen als UTF-8, inkomende HTML is geldig UTF-8, HTTP-headers verklaren UTF-8-codering ...
toegevoegd de auteur Álvaro González, de bron

1 antwoord

Ik merkte dat ik de codering van het php-bestand moest instellen op utf-8 en het werkte. Ik heb echter nog steeds geen manier gevonden om HTML-tekens te gebruiken.

1
toegevoegd