我有一个HTML的URL:
<a href="index.php?q=event&id=56&date=128">
我需要把它转换成一个字符串,如下所示:
<a href="index.php?q=event&id=56&date=128">
我知道如何用preg_replace等来做这件事,但是php中有没有一个函数可以直接处理编码,我可以用它来处理其他编码问题,比如&nsbp(或者其他什么,等等)?理想情况下,我将字符串发送到函数中,它将输出'&'而不是&。是否有一个通用的功能转换&TEXT;成一个实际的字符?
编辑:对不起,在我完成问题之前发布了这个。问题现在已经完成。
4条答案
按热度按时间ih99xse11#
使用html_entity_decode():
sczxawaw2#
使用htmlspecialchars_decode。直接来自PHP文档页面的示例:
ccgok5k53#
PHP中没有内置的函数可以将
&
这样的实体转换为双&。为了避免混淆,&的html实体实际上是&
,而不是amp;
,因此在您的示例上运行任何内置解析器都会返回以下内容:而不是
为了得到double &版本,你需要使用正则表达式。
或者,如果您实际上需要单个&版本,则有两种可能性。
1.如果你只是想转换
& " ' < >
,那么你应该使用htmlspecialchars_decode。这对于你所给予的例子来说就足够了。1.如果你想转换任何格式的字符串&TEXT;,那么你应该使用html_entity_decode。
我怀疑htmlspecialchars_decode会比html_entity_decode快,所以如果它覆盖了你想转换的所有实体,你应该使用它。
u91tlkcl4#
经过字符串去TinyMCE只有这个代码帮助我