gpt4 book ai didi

php - 使用 PHP+CSS 检测包含大写单词的行并使用粗体行设置样式

转载 作者:行者123 更新时间:2023-11-28 17:42:35 25 4
gpt4 key购买 nike

不确定是否可以实现。在数据库字段(“$features”)中有具有这种模式的信息:

SUBHEADING:
- feature1
- feature2
- feature3
SUBHEADING:
- feature1
- feature2
- feature3
- feature4
SUBHEADING:
- feature1
- feature2
... etc.

我需要使用无序列表将其打印在屏幕上:

<ul>
<li>SUBHEADING:</li>
<li>- feature 1</li>
<li>- feature 2</li>
<li>- feature 3</li>
<li>SUBHEADING:</li>
<li>- feature 1</li>
<li>- feature 2</li>
<li>- feature 3</li>
</ul>

所以使用 PHP,我做了:

<ul><li><?=str_replace("\n","</li><li>",$features);echo"</li>";?></ul>

到此为止,没问题。现在我需要将BOLD 应用于所有SUBHEADINGS。我认为模式是,应用 <strong><li> 之后和 </strong>之前</li>光标找到一行,其中所有字母或更好的单词都是 UPPERCASE .这可能是一种方式,但不是 100% 确定。

可能有更有效的方法,问题是我不知道如何用代码来放置我刚刚写的东西。可能正在使用正则表达式,不确定。我感谢任何帮助、想法或建议。

** 更新/解决方案 **

<?php
echo "<ul>";
$features = explode("\n", $features);
foreach($features as $v) {
echo "<li>";
$v = str_replace(':','',$v);
echo ($v === strtoupper($v)) ? "<strong>".$v."</strong>" : $v;
echo "</li>";
}
echo "</ul>";
?>

最佳答案

使用ctype_upper功能。如果你有一个变量中的所有字符串,你可以试试这个:

<?php
echo "<ul>";
$features = explode("\n", $features);
foreach($features as $v) {
echo "<li>";
echo ctype_upper($v) ? '<strong>'. $v .'</strong>' : $v ;
echo "</li>";
}
echo "</ul>";
?>

关于php - 使用 PHP+CSS 检测包含大写单词的行并使用粗体行设置样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23830186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com