如何在strip_tags中使用<-?我试过没有运气之前和之后的符号

问题描述

| 好的...我知道<-不能使用允许的标签每条被排除在strip_tags之外,但是我正试图解决。变通方法可以在字符集上正常工作,这些字符集最初不是有效的HTML,例如<<或<〜,但是当我使用下面的代码在处理strip_tags之前将<-或->转换为数字然后从数字返回到<-和->之后。但是,只要这些符号显示在那里的所有HTML都将被删除,即不进行处理。我知道我不能通过允许的标记单独留下它,这就是为什么我在strip_Tags之前转换它,然后在之后转换回来...但是,即使它在strip_tags所在的行之后转换回去,它几乎就像strip_Tags仍将其删除一样,因为它已删除<-并将所有内容都放在它的右边。...有什么想法或其他尝试方法吗?我也尝试将<-定义为
&lt;—
,并尝试将其替换为其他符号,例如#-,但是无论我得到的结果如何。 我还应该提到<-和-> arent一起使用,它们用于指向文本中的内容。就像实习生<-在这里拼写错误
`<?PHP 
$data = file_get_contents(\"test.html\");
$data = str_replace(\"<-\",\"999\",$data);
$data = str_replace(\"->\",\"998\",$data);
$data = strip_tags($data,\'\');
$data = str_replace(\"999\",\"<-\",$data);
$data = str_replace(\"998\",\"->\",$data);
echo $data;
?>`
我当时正在收集示例数据,并且意识到如果我删除了大部分示例HTML,一切都会很好,结果发现如果我自己剥离实际的HTML注释(例如
<!-- Header //-->
),转换就可以了,所以我将寻找正则表达式匹配项删除转换前的HTML注释和删除标记。 更新资料 我使用下面的代码首先删除了HTML注释,这成功了。谢谢你的帮助。
`$data = preg_replace(\'/<!--(.*)-->/\',\'\',$data);`
    

解决方法

更新:
$string = \"<div>words words wrods <- words words</div>\";
$string = str_replace(\'<-\',\'&lt;-\',$string);
echo strip_tags($string);
输出(源):
words words wrods &lt;- words words
输出(HTML):
words words wrods <- words words
    

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...