【问题标题】:Add html tag after second word在第二个单词后添加 html 标签
【发布时间】:2023-03-24 09:49:01
【问题描述】:

我有一个包含 4 个单词的变量。 例如:

$a="asd,dss,asc,dsa" 

我想在第二个单词('dss')之后添加一个<br> 标签。我该怎么做?

添加后:

$a="asd,dss<br>,asc,dsa";

PS。 $a 不是数组。

【问题讨论】:

  • $a 包含 4 个单词是什么意思?
  • 当我从数据库中选择 $row['locations']="as,as,cd,cs"
  • 为什么要这样做?对于某些样式问题,这似乎是一个丑陋的解决方法。

标签: php add


【解决方案1】:

这样就可以了:

$a="asd,dss,asc,dsa";
$arr = explode(",", $a);
$arr[1] = $arr[1]."<br>";
$a = implode(",", $arr);

您可以使用不同的参数(例如 de "," 作为分隔符或单词的位置来创建一个函数来执行此任务。

function add_br($str, $sep, $pos) {
    $arr = explode($sep, $str);
    $arr[$pos] = $arr[$pos]."<br>";
    return implode(",", $arr);
}


echo add_br("asd,dss,asc,dsa", ",", 1); // output: "asd,dss<br>,asc,dsa"
echo add_br("asd|dss|asc|dsa", "|", 1); // output: "asd|dss<br>|asc|dsa"

【讨论】:

  • 谢谢,这会有这样的效果:$a="dada,dad
    ,da,ds"。我怎样才能在
    之后删除 ','
  • @MaximAlexandru 这是另一个问题。
【解决方案2】:

我不确定你在问什么,但这可能会对你有所帮助

echo htmlspecialchars(str_replace('dss','dss<br>',"asd,dss,asc,dsa"));

输出

asd,dss<br>,asc,dsa

【讨论】:

    【解决方案3】:
    $a="asd,dss,asc,dsa";
    $str = preg_replace('/,/', '<br>,', $a, 2);//will replace 2nd occurence of ',' with '<br>,'
    echo $str;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多