3
我正在循环访问一个文本字符串(在php中),将数据库中的某些关键字变为链接。问题是,当对方如内存在于数据库中的话:正则表达式来查找字母后面没有的单词
开发,开发人员,开发...
我结束了:
"Random string with the word <a href="developer"><a href="develop">develop</a>er</a> in it"
我需要这只是包装各地开发商,而不是一个标签发展中它 ...
这里是我当前的功能:
function hyper($haystack){
$query = "SELECT * FROM `hyperwords` ";
$query .= "WHERE `active` = '1' ";
$query .= "ORDER BY LENGTH(hyperword) DESC ";
$result = mysql_query($query);
while($row = mysql_fetch_array($result)){
$needle = $row['hyperword'];
$link = $row['link'];
$haystack = preg_replace("/($needle)/iu", "<a class='meta' href='$link'>$1</a>", $haystack);
}
return $haystack;
}
在此先感谢!
这超出如果他们之后是怎么样的情况下信检查,其中一个字是另一个字内...例如另一个而不是。它是否需要部分词汇?或者它只应该链接完整的单词。 – Jacob 2011-02-23 02:40:40
@Jacob - 客户没有指定,我只是假设全文。但是非常好的一点。 – RANGER 2011-02-23 02:51:15