Вы можете обрезать снова, чтобы удалить лишние '-' с обеих сторон строки.
$slug = strtolower(trim(preg_replace('/[^A-Za-z]+/', '-', 'top-5-ways--to-avoid-list-')));
echo trim($slug, '-');
Результат: список лучших способов избежать
Мы пользуемся превосходной библиотекой DotNetOpenId здесь на Переполнении стека:
теперь перемещенный в:
Наш исходный вход в систему UI был обеспечен идентификационный Селектор , но мы с тех пор прокрутили нашу собственную минималистскую версию.
Я буду второй рекомендация для DotNetOpenId и добавлять рекомендацию для openid-селектор (версия с открытым исходным кодом idselector)