假设我有这个代码
$text = "please visit this <a href="http://example.com">site</a>."
$text = htmlspecialchars($text);
echo $text;
所以它的输出将是please visit this <a href="http://example.com">site</a>.
但我希望它的输出像这样
请访问此site。
有没有办法看看它是否是一个href然后做某事?
感谢。
答案 0 :(得分:2)
仅转义网址:
$text = 'please visit this <a href="' . htmlspecialchars('http://example.com') . '">site</a>.'
注意单引号和双引号之间的切换。
答案 1 :(得分:1)
您的字符串定义很糟糕(正如您可以通过语法高亮显示)。 实际上,您不需要在此实例中转义任何内容,因为您需要功能性HTML。
你可以像这样使用转义字符:
$text = "please visit this <a href=\"http://example.com\">site</a>."
^- escape here ^- and here
有时你可以使用不同的引号集,例如:
// use single quote
$text = 'please visit this <a href="http://example.com">site</a>.'
另一种可能性是HEREDOC表示法:( stackoverflow无法识别语法)
$text = <<<DELIM
please visit this <a href="http://example.com">site</a>.
DELIM;