我的一些客户希望将 Google 再营销代码添加到他们的网站,并且有一个面板可以实现此目的。
我使用 strip_tags
从代码中删除不必要的标签(出于安全原因),但该函数还删除了 CDATA
。
如何排除它?
再营销代码示例:
<script type="text/javascript">
/* <![CDATA[ */
var google_conversion_id = 123456789;
var google_conversion_label = "AAAAAAAAAAAAAAAAAAA";
var google_custom_params = window.google_tag_params;
var google_remarketing_only = true;
/* ]]> */
</script>
<script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt="" src="//googleads.g.doubleclick.net/pagead/viewthroughconversion/123456789/?label=AAAAAAAAAAAAAAAAAAA&guid=ON&script=0"/>
</div>
</noscript>
PHP 代码:
$userContent = addslashes(strip_tags($data["analytics_code"],'<script><noscript><img><div>'));
输出是这样的:
<script type="text/javascript">
/* */
</script>
<script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js">
</script>
<noscript>
<div style="display:inline;">
<img height="1" width="1" style="border-style:none;" alt="" src="//googleads.g.doubleclick.net/pagead/viewthroughconversion/123456789/?label=AAAAAAAAAAAAAAAAAAA&guid=ON&script=0"/>
</div>
</noscript>
谢谢
最佳答案
不幸的是strip_tags()
它的功能相当简单。另外,作为一般规则,正则表达式无法解析 HTML,因为 HTML、XML 等不属于正则语言类别。换句话说,您只能使用 HTML/XML 解析器来找出您需要的信息。
关于php - 不想使用 strip_tags() 删除 CDATA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18015700/