Bob*_*Bob 4 html perl encode cpan
如何防止html实体的双重编码,或以编程方式修复它们?
我正在使用HTML :: Entities perl模块中的encode()函数来编码用户输入中的HTML实体.这里的问题是我们还允许用户直接输入HTML实体,这些实体最终被双重编码.
例如,用户可以输入:
Stackoverflow & Perl = Awesome…
这最终被编码为
Stackoverflow & Perl = Awesome…
这在浏览器中呈现为
Stackoverflow & Perl = Awesome…
我们希望将其渲染为
Stackoverflow & Perl = Awesome...
有没有办法防止这种双重编码?或者是否有一个模块或代码片段可以轻松纠正这些双重编码问题?
任何帮助是极大的赞赏!
您可以先解码字符串:
my $input = from_user();
my $encoded = encode_entities( decode_entities $input );
Run Code Online (Sandbox Code Playgroud)