回答:
$string = rtrim($string, ',');
これは古典的な質問であり、2つの解決策があります。カンマを1つだけ削除したい場合は、次のようにします。
if (substr($string, -1, 1) == ',')
{
$string = substr($string, 0, -1);
}
行末からすべてのコンマを削除したい場合は、より単純な方法を使用します。
$string = rtrim($string, ',');
rtrim関数(および左トリムの対応するltrim)は、削除する文字の範囲を指定できるため、非常に便利です。
$string = rtrim($string, ", \t\n");
あなたはループの中で何かを連結していると思います
foreach($a as $b)
$string .= $b . ',';
配列内のアイテムを収集してから、必要な区切り文字で結合するのがはるかに良い
foreach($a as $b)
$result[] = $b;
$result = implode(',', $result);
これにより、通常連結で発生する末尾および二重区切り文字の問題が解決されます
if(substr($str, -1, 1) == ',') {
$str = substr($str, 0, -1);
}
単純な正規表現が機能します
$string = preg_replace("/,$/", "", $string)
その前に:
if(substr($string, -1)==",")