我有这个数组循环:
foreach ( $event_entrance as $event_entrance_s ) {
_e($event_entrance_s,'holidayge');
echo ', ';
}
我想在最后一个循环结束时摆脱comma
有任何想法吗?看似简单,但它不适合我:)。
答案 0 :(得分:4)
$fn = function($v) { return _e($v,'holidayge'); };
$arr = array_map($fn, $event_entrance );
echo implode(',', $arr);
答案 1 :(得分:2)
两个选项:
implode
将事物放在一起,它可以轻松处理这个边缘情况。说真的,内爆很棒答案 2 :(得分:0)
尝试这样的事情:
$event_entrance_count = count($event_entrance);
$loop_number = 1;
foreach ( $event_entrance as $event_entrance_s ) {
_e($event_entrance_s,'holidayge');
if(!$loop_number == $event_entrance_count) {
echo ', ';
}
$loop_number++;
}
答案 3 :(得分:0)
怎么样......
$limit = count($event_entrance);
foreach ($event_entrance as $key => $event_entrance_s) {
_e($event_entrance_s,'holidayge');
if ($key < ($limit-1)) {
echo ', ';
}
}
只要您的键是整数和顺序,这应该完全按照您的意图工作。如果您使用的是整数,但它们没有任何特定的顺序,那么在foreach()
循环之前放置它将解决这个问题:
$event_entrance = array_values($event_entrance);
如果您使用字符串作为键而不是整数,请尝试以下操作:
$limit = count($event_entrance);
$i = 1;
foreach ($event_entrance as $event_entrance_s) {
_e($event_entrance_s,'holidayge');
if ($i < $limit) {
echo ', ';
}
++$i;
}