我的一些客户希望将谷歌重新营销代码添加到他们的网站,并且有一个专门小组来实现这一目标。
我正在使用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>
由于
答案 0 :(得分:1)
不幸的是strip_tags()
的功能相当简单。此外,作为一般规则,正则表达式无法解析HTML,因为HTML,XML等不适合常规语言类。换句话说,您只需使用HTML / XML解析器来提取所需的信息。