0

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

我有一个字符串,像这样:

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>
4

3 回答 3

1

您正在寻找的是爆炸

$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>";
}
于 2013-02-07T01:20:23.087 回答
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);
于 2013-02-07T01:22:22.283 回答
0

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

似乎您想用来DOMDocument查找字符串中的文本节点并用相应的锚点包装或替换它们。

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

于 2013-02-07T01:17:34.507 回答