Это классический вопрос с двумя решениями. Если вы хотите удалить только одну запятую, которая может быть, а может и не быть, используйте:
if (substr($string, -1, 1) == ',')
{
$string = substr($string, 0, -1);
}
Если вы хотите удалить все запятые в конце строки, используйте более простое:
$string = rtrim($string, ',');
Функция rtrim (и соответствующий ltrim для левой обрезки) очень полезна, так как вы можете указать диапазон символов для удаления, т.е. удалить запятые и конечные пробелы, которые вы напишите:
$string = rtrim($string, ", \t\n");