将单词加粗php的问题


Issue with making word bold php

好的,所以我有一个输出一些文本的字符串。

~梯田
公寓有两个大露台。主露台(30平方米)可从客厅进入,配有一张带6把扶手椅的大木桌和舒适的大型木制日光浴床。这里的景色令人惊叹,你可以欣赏到令人难以置信的海景,但你也可以欣赏到马贝拉后面引人注目的山La Concha的迷人景色。第二个露台(14平方米)可从厨房进入

我唯一想做的就是制作一个类似~string的模式,将其转换为string。更具体地说,去掉~、空格并将文本加粗。

我创建了这个功能:

function bold($var) {
$var = preg_replace('/~'s(.*?)/', '<strong>$1</strong>', $var);
return $var;
}

函数会删除~,但不会使文本变为粗体。为什么?更奇怪的是,如果我在强标签之间插入一些东西,我会得到粗体文本,然后是我想要取消粗体的文本,即使它们在相同的标签中。

只是一个简短的提示$var是一个完整的字符串,就像上面的例子一样。

我相信你需要这个:

$var = preg_replace('/~'s*('S+)/', '<strong>$1</strong>', $var);

首先。PHP是一种服务器端语言,因此为了使其加粗,您可能需要使用粗体标记回显HTML。

运行正则表达式后,为什么不这样做呢:

$var = '<strong>$var</strong>';

而不是尝试通过正则表达式来完成这一切?