【发布时间】:2021-04-27 13:31:00
【问题描述】:
我试图从字符串中删除最后一个,,但没有成功。
我需要这样的字符串:2,3,4
但是当试图剥离最后一个, 时,我得到的输出是:234 而不是2,3,4
$alldays = array('2','3','4');
foreach($alldays as $day) {
$string = $day.',';
$string_without_last_comma = substr($string, 0, -1);
echo $string; // output: 2,3,4,
echo $string_without_last_comma; // output: 234 ( should be 2,3,4)
}
我怎样才能做到这一点?
【问题讨论】:
-
提示:
implode. -
$string仅存在于循环内,因此您要添加逗号,并在下一行删除。implode不是更好的解决方案吗? -
是的,
implode存在,但对于更一般的情况:首先不要添加额外的逗号!这会变得更容易,如果你把逻辑反过来——不要在每个项目之后添加逗号,而是在之前添加逗号。然后您只需要处理第一项的情况 - 您可以通过检查$string是否仍然为空来轻松完成。如果是,那么您将要向其添加第一项,因此无需在其前面添加逗号。 -
我同意。
implode解决了这个问题。谢谢