从句子中加粗前两个单词

时间:2009-11-20 08:56:41

标签: php

在PHP中,如何从句子中加粗前两个单词?

谢谢!

3 个答案:

答案 0 :(得分:11)

实际上,使用函数explode中的“limit”参数(第三个参数,可选,检查the function spec),您可以跳过循环并使代码更简单:

$words_array = explode(" ",$sentence,3);
$new_sencence = ( count($words_array)>2 )? 
    "<strong>".$words_array[0]." ".$words_array[1]."</strong> ".$words_array[2] :
    "<strong>".$sentence."</strong>"; //sentence is 2 words or less, just bold it

编辑:处理2个字或更少的句子

答案 1 :(得分:4)

你需要将事情分解为步骤......

1)你有一句话,如下:

$Sentence = "Hello everybody in the world.";

2)你需要得到前两个单词。有两种选择。您可以在每个空格上拆分句子,也可以找到第二个空格的位置。我们现在将使用第一个选项...

$Words = explode(" ", $Sentence);

3)我们重新组装它,插入一些HTML以使事情变得粗体......

$WordCount = count($Words);
$NewSentence = '';
for ($i = 0; $i < $WordCount; ++$i) {
    if ($i < 2) {
        $NewSentence .= '<strong>' . $Words[$i] . '</strong> ';
    } else {
        $NewSentence .= $Words[$i] . ' ';
    }
}
echo $NewSentence;

答案 2 :(得分:4)

preg_replace('/^(\S+(\s+\S+)?)/', '<b>$1</b>', $sentence)