我更喜欢jquery。
假设我有一个字符串,
亚当,丽莎,约翰,莎拉我希望将它们变成:
<ul><li>Adam</li><li>lisa</li><li>john</li><li>sarah</li></ul>
答案 0 :(得分:5)
"<ul><li>" + "adam, lisa, john, sarah".split(", ").join("</li><li>") + "</li></ul>"
[编辑:] 我提到javascript,因为你提到了jQuery。我不知道在php中执行此操作的最佳方法,但您使用php中的preg_split
和implode
执行上述操作。
答案 1 :(得分:2)
使用jQuery的$.map函数:
var names = 'adam,lisa,john,sarah';
var html = '<ul>'+$.map(names.split(','), function(name){
return '<li>'+name+'</li>'
}).join('')+'</ul>';
答案 2 :(得分:2)
或者你可以做爆炸和预告:
$array = explode(', ','adam, lisa, john, sarah');
foreach ($array as $name) {
$output .= '<li>' . $name . '</li>';
}
echo '<ul>' . $output . '</ul>';
也许有点简单。
编辑:更简单的是常规的str_replace。
$list = '<ul><li>' . str_replace(', ','</li><li>','adam, lisa, john, sarah') . '</li></ul>';
echo $list;
答案 3 :(得分:0)
要在PHP中执行此操作,请将字符串展开以使其成为一个数组,然后使用array_map将每个项目转换为li标记。完成后,将其内爆以获得所需的结果:
$items = explode( ",", "adam,lisa,john,sarah" );
array_map( "makeLiTag", $items );
echo( "<ul>" . implode( "", $items ) . "</ul>" );
function makeLiTag( &$item, $key )
{
$item = "<li>$item</li>";
}