Php DOMDocument->;saveHtml()在脚本标记中转义utf8 $newContent=我以前遇到过类似的问题。这是一个被转义的JSON数据。尝试不转储,而是在浏览器中呈现。您的问题带有symfony1和symfony2标记。请仅使用与Sym

Php DOMDocument->;saveHtml()在脚本标记中转义utf8 $newContent=我以前遇到过类似的问题。这是一个被转义的JSON数据。尝试不转储,而是在浏览器中呈现。您的问题带有symfony1和symfony2标记。请仅使用与Sym,php,symfony,utf-8,Php,Symfony,Utf 8,DOMDocument->;saveHtml()在脚本标记中转义utf8 $newContent=我以前遇到过类似的问题。这是一个被转义的JSON数据。尝试不转储,而是在浏览器中呈现。您的问题带有symfony1和symfony2标记。请仅使用与Symfony版本对应的标签。 $newContent = <<<HTML <!DOCTYPE html> <html lang=ru> <head> <meta charset

DOMDocument->;saveHtml()在脚本标记中转义utf8
$newContent=我以前遇到过类似的问题。这是一个被转义的JSON数据。尝试不转储,而是在浏览器中呈现。您的问题带有symfony1和symfony2标记。请仅使用与Symfony版本对应的标签。
$newContent = <<<HTML
<!DOCTYPE html>
<html lang=ru>
  <head>
    <meta charset="utf-8">
    <title>Кирилица</title>
  </head>
  <body>
  Кирилица
  <script charset="utf-8" type="text/javascript">
    function drawCharts(){
      console.log('Кирилица');
    }
  </script>
  </body>
</html>
HTML;

$crawler = new \Symfony\Component\DomCrawler\Crawler($newContent);
$newContent = $crawler->html();
// here is a fix, that can unescape all escaped chars
// $newContent = preg_replace_callback("/(&#[0-9]+;)/", function($m) { 
//   return mb_convert_encoding($m[1], "UTF-8", "HTML-ENTITIES"); 
// }, $newContent);

var_dump($newContent);