#php #html
#php #HTML
Вопрос:
Я знаю, как использовать str_replace(' ', '<span></span>', $text);
Но есть ли какой-либо способ, которым я могу получить результат, подобный
cat, dog, elephant, pig
для преобразования как
<span class="tagstyle">cat</span><span class="tagstyle">dog</span><span class="tagstyle">elephant</span><span class="tagstyle">pig</span>
Возможно ли в PHP, jQuery заменить значение, разделенное запятой, подобно методу span?
Комментарии:
1. в php
echo '<span class="tagstyle">' . implode('</span><span class="tagstyle">', explode(',','cat, dog, elephant, pig ')) . '</span>';
Ответ №1:
В PHP это может быть:
<?php
$string = 'cat, dog, elephant, pig';
$animals = explode(',', $string);
$output = '';
foreach ($animals as $animal) {
$output .= '<span class="tagstyle">' . trim($animal) . '</span>';
}
echo $output;
?>
Ответ №2:
вы можете сделать вот так:
var animals = "cat, dog, elephant, pig";
var temp = animals.split(',');
var html = '';
$.each(temp, function (index, item) {
console.log(item);
html = '<span class="tagstyle">' item '</span>';
})
$("#contain").html(html);
Ответ №3:
Попробуйте использовать $.map()
для преобразования массива в наш требуемый формат, затем присоедините к этому массиву пустую строку,
var str = "cat,dog,elephant,pig";
var htmlString = $.map(str.split(','),
function(val,i){
return '<span class="tagstyle">' val '</span>';
}).join(''); //<span class="tagstyle">cat</span> .......
ДЕМОНСТРАЦИЯ
Ответ №4:
Если это просто так, вы можете попробовать:
'<span class="tagstyle">'.str_replace(', ','</span><span class="tagstyle">',$text).'</span>';
или
$array = explode(', ',$text);
$newText = '<span class="tagstyle">'.implode('</span><span class="tagstyle">',$array).'</span>';