我有一個字符串類似以下內容: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