URL Friendly Имя пользователя в PHP?

23
задан Alix Axel 29 May 2010 в 18:31
поделиться

2 ответа

function Slug($string)
{
    return strtolower(trim(preg_replace('~[^0-9a-z]+~i', '-', html_entity_decode(preg_replace('~&([a-z]{1,2})(?:acute|cedil|circ|grave|lig|orn|ring|slash|th|tilde|uml);~i', '$1', htmlentities($string, ENT_QUOTES, 'UTF-8')), ENT_QUOTES, 'UTF-8')), '-'));
}

$user = 'Alix Axel';
echo Slug($user); // alix-axel

$user = 'Álix Ãxel';
echo Slug($user); // alix-axel

$user = 'Álix----_Ãxel!?!?';
echo Slug($user); // alix-axel
93
ответ дан 29 November 2019 в 00:40
поделиться

Другими словами ... вам нужно создать удар пользователя. Доктрина (ORM для PHP) имеет хорошую функцию для этого. DOCTRINE_INFLECTOR :: urlize ()

Редактировать : Вы также должны держать имя пользователя в базе данных в базе данных, как уникальный столбец ключа. Затем каждая операция поиска должна быть сделана на основе этого столбца, не оригинального имени пользователя.

3
ответ дан 29 November 2019 в 00:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: