假设我提交了一个包含以下消息的表单:
Hi! What's up? <a href="http://test.com">Click here</a> to check out <a href="http://test.com">my</a> website.
如何检测字符串是否包含带有PHP的<a>
标记,然后将rel="nofollow"
添加到其中?所以它会改为:
Hi! What's up? <a href="http://test.com" rel="nofollow">Click here</a> to check out <a href="http://test.com" rel="nofollow">my</a> website.
关于代码如何运作的一点推测?
$string = $_POST['message'];
if (*string contains <a> tags*) {
*add rel="nofollow"*
}
答案 0 :(得分:3)
总是存在DOMDocument对象。
<?php
$dom = new DOMDocument();
$dom->loadHTML('<a href="http://example.com">woo! examples!</a>');
foreach ($dom->getElementsByTagName('a') as $item) {
$item->setAttribute('rel', 'nofollow');
}
echo $dom->saveHTML();
?>