Подтвердить что ты не робот

PHP Implode wrap в тегах

Пробовал отвечать на Google, но, похоже, не нашел ничего, у меня есть следующее...

<?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>";
?>

Я хочу обернуть все $value в теге span, но не знаю, как...

Я пробовал,

<?php
$value = "<span>".implode($values,', ')."</span>";
?>

не повезло, может ли кто-нибудь дать мне представление о том, где я ошибаюсь?

4b9b3361

Ответ 1

Таким образом, вы завершаете весь набор за один интервал, вам нужно добавить тег закрытия/открытия к implode:

$value = "<span>".implode('</span>,<span>', $values)."</span>";

Ответ 2

Вы можете использовать функцию array_map, smth вот так:

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

Завершить, тогда просто взорвать с помощью ,.

Ответ 3

В принципе, это просто разрушает ваши значения, используя "клей" span closed/open и обертывает его, чтобы первый и последний элементы имели свои теги начала/конца:

$value = "<span>" . implode("</span><span>", $values) . "</span>";