可能重复:
PHP中的URL友好用户名?
我在某种程度上混淆了使用适当的函数来逃避和创建一个slu ..
我用过这个:
$slug_title = mysql_real_escape_string()($mtitle);
Run Code Online (Sandbox Code Playgroud)
但有人告诉我不要使用它并使用urlencode()
哪一个更适合slu and和安全
正如我在SO中看到的,它插入 - 在单词之间:
https://stackoverflow.com/questions/941270/validating-a-slug-in-django
Run Code Online (Sandbox Code Playgroud)
Tho*_*mas 12
使用MySQL或URL转义不是要走的路.
这篇文章做得更好:
function toSlug($string,$space="-") {
if (function_exists('iconv')) {
$string = @iconv('UTF-8', 'ASCII//TRANSLIT', $string);
}
$string = preg_replace("/[^a-zA-Z0-9 -]/", "", $string);
$string = strtolower($string);
$string = str_replace(" ", $space, $string);
return $string;
}
Run Code Online (Sandbox Code Playgroud)
这也适用于重音字符.