以下是我的翻译:
我希望输出的结果是这样的:
这是我的意思:
foreach ($array as $a) {
echo $a.',<br/>';
}
当前输出结果如下:
a,
a,
a,
a,
我希望输出的结果是这样的:
a,
a,
a,
a
将所有的'a'用逗号分隔,当到达最后一个循环时不写逗号。
这是我的意思:
foreach ($array as $a) {
echo $a.',<br/>';
}
当前输出结果如下:
a,
a,
a,
a,
a,
a,
a,
a
将所有的'a'用逗号分隔,当到达最后一个循环时不写逗号。
试试这个:
echo implode(",<br/>", $array);
<?php $len=count($array);
foreach($array as $a){
echo $a;
if( $len > 1) echo ',';
$len--;
} ?>
<br />
,这可能是理想的,特别是在输出时:echo nl2br(implode(',' . PHP_EOL, $array));
nl2br
因为我喜欢代码看起来好看--我不知道为什么还要用trim
。此外,它会将数组中的任何新行转换,这可能是您想要的。 - Michaelforeach($array as $element) {
$separator = ($element != end($array)) ? ",<br />" : '';
// or $separator = ($element == end($array)) ? '' : ",<br />";
echo $element.$separator;
}
我想这将会输出你希望的内容。
除了一种情况,你应该使用implode
。
如果输出很大,并且在发送到输出之前不想将其保存在内存中(例如逐个处理),那么你应该做如下操作:
$remain=count($array);
foreach ($array as $a) {
echo $a;
if($remain-->0) echo ',';
echo '<br/>';
}
echo implode(",<br />",$array)
。 - Baba