У меня есть набор данных, которые могут быть смешанными символами, специальными символами, символами «акцента» и т. Д.
Я использовал php inconv с транслитом, но сегодня заметил, что точка пули преобразуется в «бык». Я не знаю, какие еще символы не конвертируются и не удаляются.
$, *,% и т. д. удаляются.
По сути, я пытаюсь сохранить буквы, но удалить только «неязыковые» биты.
Это код, который я использовал
$slugIt = @iconv('UTF-8', 'ASCII//TRANSLIT', $slugIt);
$slugIt = preg_replace("/[^a-zA-Z0-9 -]/", "", $slugIt);
Конечно, если я переместу preg_replace выше функции inconv, символы акцента будут удалены до их перевода, так что это тоже не сработает.
Есть идеи по этому поводу? или какие не буквенные символы пропущены в переводе?
--------------------- Edited ------------------------- --------
Как ни странно, это не ПЕРЕВОД, который меняет пулю на «бык». Я закомментировал preg-replace, и «бык» был возвращен к пуле. К сожалению, я пытаюсь использовать это для создания читаемых URL-адресов, а также для некоторых других вещей, поэтому мне все равно нужно будет делать URL-кодирование.