繁体   English   中英

symfony 和编码中 webpack-encore 的随机错误

[英]Random bug with webpack-encore in symfony and encoding

我在 symfony 中遇到 webpack-encore 的随机问题。 当我刷新我的页面时,我遇到了一个问题:

“在呈现模板期间抛出异常(“警告:htmlentities():不支持字符集‘throwAt’,假设为 utf-8”)。”

我刷新并且我有:

“在呈现模板期间抛出异常(“警告:htmlentities():不支持字符集‘处理程序’,假设为 utf-8”)。”

我刷新,我的页面很好。

这是一个循环......(太奇怪了!)

在其他页面上,我没有看到循环。 如果我刷新,也许工作,也许不。

我做了一些测试。 如果我在 TagRenderer.php 中更改这一行(函数:convertArrayToAttributes;第 114 行):

返回 sprintf('%s="%s"', $key, htmlentities($value));

和:

返回 sprintf('%s="%s"', $key, htmlentities($value, ENT_COMPAT | ENT_HTML401, "ISO8859-1"));

一直都在工作。 但我不确定这是好的解决方案。

当我在“htmlentities($value)”行之前转储“$value”时,值为:“stylesheet”。

当我重新启动我的电脑时,这个问题消失了,但随着时间的推移,它又回来了!

你有什么主意吗?

有关信息:我在 docker 图像上。 我的源代码是 UTF-8

编辑:显然,我在刷新之前、之后和之间清理缓存(通过命令或删除文件夹),但没有任何变化。

我自己流口水两天试图解决这个问题。 事实上,这是您在CKEditor中进行文本编辑的地方,这会引发此问题。

在测试不同的东西时,我意识到我们需要添加| raw,并在TagRenderer类的convertArrayToAttributes方法中,而不是:

return sprintf ('%s = "%s"', $key, htmlentities ($value));

宁愿做:

return sprintf('%s = "%s"', $key, htmlentities($value, ENT_COMPAT | ENT_XHTML, 'utf-8'));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM