-1 потому что это не касается акцентированных символов, сри.

аюсь создать строку URL, аналогичную той, которую SO использует для ссылок на вопросы. Я не смотрю на переписывание URL (mod_rewrite). Я смотрю на создание ссылки на странице.

Пример: название вопроса:

Is it better to use ob_get_contents() or $text .= ‘test’;

URL в конечном итоге будет:

http://stackoverflow.com/questions/292068/is-it-better-to-use-obgetcontents-or-text-test

Часть, в которой я заинтересован:

is-it-better-to-use-obgetcontents-or-text-test

Таким образом, в основном я пытаюсь очистить все, что не является буквенно-цифровым, сохраняя читаемость URL. Я создал следующее, но я не уверен, что это лучший способ или он охватывает все возможности:

$str = urlencode(
    strtolower(
    str_replace('--', '-', 
    preg_replace(array('/[^a-z0-9 ]/i', '/[^a-z0-9]/i'), array('', '-'), 
    trim($urlPart)))));

Итак, в основном:

отделказаменить любой алфавитно-цифровой плюс пробел ни на чтозатем замените все, что не буквенно-цифровое, тирезаменить -.strtolower()urlencode() - вероятно, не нужно, но просто для хорошей меры.

Ответы на вопрос(1)

Ваш ответ на вопрос