PHP之间的链接文本

时间:2013-02-07 01:14:46

标签: php string

我不想成为一个帮助吸血鬼,我只是要求一个大方向,或者必须使用哪些技术来实现这一目标。

我有一个字符串,如下所示:

joke<br>kid<br>forreal<br>me

我怎么把它变成这样的东西:

<a href="http://www.dumbsearch.com/chat/user.php?q=joke">joke</a><br>
<a href="http://www.dumbsearch.com/chat/user.php?q=kid">kid</a><br>
<a href="http://www.dumbsearch.com/chat/user.php?q=forreal">forreal</a><br>
<a href="http://www.dumbsearch.com/chat/user.php?q=me">me</a><br>

3 个答案:

答案 0 :(得分:1)

您要找的是explode

$string = "...";

// split the string on every "<br>"
$users = explode("<br>", $string);

// loop through the users, adding the anchor
for ($i = 0, $count = count($users); $i < $count; $i++)
{
    echo '<a href="http://www.dumbsearch.com/chat/user.php?q=' . $users[$i] . '">'  . $users[$i] . '</a>';

    // add "<br>" to every user except the last
    if ($i < ($count - 1))
        echo "<br>";
}

答案 1 :(得分:1)

您可以通过<br>分隔字符串来实现此目的,您可以使用PHP Explode

来实现此目的

这将为您提供一个数组,您需要遍历它并根据需要生成html文本

如果您尝试编写代码会更好,那么我们将会更多地帮助:)

如果你不能写,也许我们可以提供帮助

代码编辑

$string = "joke<br>kid<br>forreal<br>me";

$tags = explode("<br>", $string);

$new = array(); 

foreach($tags as $tag)
{
    $new[] = '<a href="http://www.dumbsearch.com/chat/user.php?q=' . $tag . '">'  . $tag . '</a>';

}

echo implode("<br>", $new);

答案 2 :(得分:0)

PHP有几个内置的DOM解析器:DOMDocumentSimpleXML。根据我的经验,后者更适合阅读和简单操作,而前者则适用于更复杂的操作。

您似乎希望使用DOMDocument来查找字符串中的文本节点,并使用相应的锚点对其进行换行或替换。

phpQuery可能是一个选项,但它不是PHP原生的。