C'è un modo per correggere i caratteri che vengono visualizzati in modo errato dopo l'esecuzione di questo markup html tramite phpquery :: newDocument? Ci sono delle virgolette doppie intorno a "Classici con donna moderna" nel documento originale che finiscono per essere visualizzate in modo non corretto dopo aver creato il nuovo documento con phpquery.Correzione errata della codifica visualizzata su un documento html con php
//Original document is UTF-8 encoded
$raw_html = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body><p>Mr. Smith of Bangkok celebrated the “Classics with modern Woman”.</p></body></html>';
print($raw_html);
$aNew_document = phpQuery::newDocument($raw_html);
print($aNew_document);
uscita originale: Mr. Smith di Bangkok ha celebrato i “Classici con la donna moderna”.
Nuovo documento prodotto: Mr. Smith of Bangkok ha celebrato la Classics with Modern Woman.
+1 perché ho avuto questo problema prima quando ero in Windows .... questo è Windows che salva i file come CP1251 (o qualunque sia la tabella codici). Tutto dovrebbe sempre essere salvato come UTF-8 e contenuto inviato anche usando UTF-8. Linux non ha questo problema :) –
@Yanick, lo stesso qui. – shamittomar
Provato aggiungendo -header ("Content-Type: text/html; charset = UTF-8"); - nella parte superiore dello script, ma non lo ha risolto. Puoi articolare cosa intendi per pagina salvata in questo esempio? Non penso che la pagina sia mai stata salvata, ma esiste in memoria sul server linux prima di essere ricreata da phpquery :: newdocument(). Se possibile, puoi mostrare come inserire correttamente questo codice? O come salvare il documento con la codifica corretta? Potrei fare qualcosa di sbagliato. Grazie – JMC