我有一个如下字符串:
test1, test2, test3, test4,
当我在这上面使用implode函数时,我得知数组中有5个元素。
我怎能不考虑最后一个额外的逗号?
或者更好的是,我如何对其进行子串,以便最终没有额外的逗号。
答案 0 :(得分:5)
您可以使用rtrim()删除尾随逗号(或任何字符);
试试这个:
$ str = rtrim('test1,test2,test3,test4,',',');
请参阅rtrim()@ http://us2.php.net/manual/en/function.rtrim.php
的文档答案 1 :(得分:0)
也许rtrim()更好,正如Arms建议的那样。但是,正如你要求子串,只是让它注册...
substr($string, 0, -1);
当secound参数为负值时,它将像strlen($string)-N
一样,并为您提供缺少最后N个字符的字符串。
答案 2 :(得分:-1)
我可能会用
preg_split('#, *#', $str, null, PREG_SPLIT_NO_EMPTY)
使用输入会更加灵活(处理连续的逗号,缺少空间或加倍空间等等)当然,这取决于您对输入的信心保持不变。