PHP Implode包装标签

Lia*_*iam 28 html php implode

一直试图谷歌答案但似乎无法找到任何东西,我有以下...

<?php
    $values =   array_map('trim', get_post_custom_values($key));
    $value  =   implode($values,', ');
    echo "<div class='top-meta-vals'>".apply_filters(" $value\n", $value)."</div>";
?>
Run Code Online (Sandbox Code Playgroud)

我想$value在span标签中包装每一个但我不确定如何......

我试过了,

<?php
$value = "<span>".implode($values,', ')."</span>";
?>
Run Code Online (Sandbox Code Playgroud)

没有运气,任何人都可以告诉我哪里出错了?

Max*_*sky 61

通过这种方式,您将整个集合包装在一个范围内,您必须将关闭/打开标记添加到内部:

$value = "<span>".implode('</span>,<span>', $values)."</span>";
Run Code Online (Sandbox Code Playgroud)

  • 只是提一下:如果 `$tags` 数组为空,它将变成 `&lt;span&gt;&lt;/span&gt;` 字符串。 (2认同)

Bar*_*ski 11

你可以使用array_map函数,像这样:

$filter = function($tag){ return '<span>' . $tag . '</span>'; };
$spannedTags = array_map($filter, $tags);
Run Code Online (Sandbox Code Playgroud)

结束然后就是内爆,.


Dav*_*ave 8

基本上,这只会破坏你的价值,使用span关闭/打开的'glue',并将其包装,以便第一个和最后一个项目具有开始/结束跨度标记:

$value = "<span>" . implode("</span><span>", $values) . "</span>";
Run Code Online (Sandbox Code Playgroud)