如何使用php从所有链接中删除href属性

时间:2017-04-24 04:17:51

标签: php html

如何使用php从div元素的所有链接中删除href属性?

这样的事情:

if($condtion = "true"){
echo '<a href="" class="no-link">Please login</a>';
}
else{
echo '<a href="www.google.com" class="yes-link">Admin Section</a>';
}

我正在寻找解决方案,但我发现的所有内容都是使用jquery解决方案

像这样:

$(selector).removeAttr(attribute)

谢谢

4 个答案:

答案 0 :(得分:1)

这里检查条件是否为真然后回显链接,否则保持链接空白。当然,这简直就是解决你的问题。

假设在php块之外:

<a href="<?=(!$conditions ? 'www.google.com':'' ?>" class="yes-link">Admin Section</a>

或者在php块中:

echo '<a href="' . (!$conditions ? 'www.google.com':''.'" class="yes-link">Admin Section</a>';

答案 1 :(得分:0)

您可以使用preg_replace()来实现此目的。示例代码:

$html = preg_replace('#<a class="no-link">(.*?)</a>#', '', $html);

答案 2 :(得分:0)

您可以使用jQuery removeAttr() Method

定义和用法

removeAttr()方法从所选元素中删除一个或多个属性。

&#13;
&#13;
$(function() {
$("a").removeAttr("href");
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<div>
<a href="" > Click Me First </a><br>
<a href="" > Click Me Second </a>
</div>
&#13;
&#13;
&#13;

答案 3 :(得分:0)

$string1 = "<div><a href='a.php'>a</a><br><a href='b.php'>b</a><br><a href='c.php'>c</a><br><a href='d.php'>d</a></div>";
//$string2 = preg_replace("/'(.*?)'/i", '', $string1); //Uncomment this if you want empty the href value only
$string3 = preg_replace("/ href='(.*?)'/i", '', $string1); //Use this if you want to completely remove the href attribute with value