我有一个字符串类似以下内容:PHP的破灭,但不考虑额外的分隔符
test1, test2, test3, test4,
当我使用破灭功能在这等我回来,有数组中的5个元素。
我怎么能不考虑最后一个额外的逗号?
或更好,但我怎么能substring,以便最终没有额外的逗号。
我有一个字符串类似以下内容:PHP的破灭,但不考虑额外的分隔符
test1, test2, test3, test4,
当我使用破灭功能在这等我回来,有数组中的5个元素。
我怎么能不考虑最后一个额外的逗号?
或更好,但我怎么能substring,以便最终没有额外的逗号。
你可以使用rtrim()删除尾部的逗号(或任何字符);
试试这个:
$ str = rtrim('test1,test2,test3,test4,',',');
参见RTRIM()的文档@http://us2.php.net/manual/en/function.rtrim.php
也许RTRIM()是更好,因为Arms建议。但是,正如你问子,只是要把它注册...
substr($string, 0, -1);
当谢胜利,参数为负值时,它会像strlen($string)-N
,让你的字符串中缺少最后N个字符。
我可能会使用
preg_split('#, *#', $str, null, PREG_SPLIT_NO_EMPTY)
这将是与输入更加灵活(处理连续的逗号,空间不足或翻番空间,等...)。当然,这取决于如何相信你输入是否保持不变。
人们downvoting有效的答案?有趣。 – 2009-09-17 16:56:29
甚至使用trim()来删除前面的一个,如果有的话。 – mauris 2009-09-10 05:13:30