-2

我有一个字符串,我想在其中突出显示单词“some”:

$my_string = "This is some string.";
$highlight = "some";

我需要<span>使用一些最适合这项工作的 php 函数将这个词包装在标签中。

我正在使用它在我的网站上进行简单的搜索。

所以,我希望最终结果如下所示:

This is <span class="highlight-word">some</span> string.
4

2 回答 2

2

您可以str_replace按照评论中的说明使用。所以,在你的情况下,它看起来像这样:

$my_string = "This is some string.";
$highlight = "some";

echo str_replace($highlight, sprintf('<span class="highlight-word">%s</span>', $highlight), $my_string);
// This is <span class="highlight-word">some</span> string.
于 2012-08-11T09:09:20.263 回答
1

首先,您不应该突出显示具有这样跨度的单词。有专门设计的 HTML 元素,请参阅emstrong以获取有关如何使用它们的信息。

实现您想要的最佳选择是将 PHP str_replace包装在一个包装器函数中,因为您可能希望在多个地方执行此操作。

function setStrong($wordToStrong, $sentence)
{
    $strong = "<strong>$wordToStrong</strong>";
    return str_replace($wordToStrong, $strong, $sentence);
}

然后像这样使用:-

echo setStrong("strong", "This should be a strong word");
于 2012-08-11T09:23:55.870 回答