$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);
所以...我的问题是: 为什么utf8字符(西里尔符号)只在脚本标记内转义? O_O 。 。 。 。 。 。 。 。 。 。 。 。 。