来自维基百科:
甲 蛞蝓 是识别使用人类可读关键字的页面的URL的一部分。 为了使URL易于用户输入,通常也删除或替换特殊字符。例如,带重音的字符通常被英语字母中的字母代替;标点符号通常会被删除;和空格(必须将其编码为%20或+)替换为破折号(-)或下划线(_),从美学上讲更令人愉悦。
甲 蛞蝓 是识别使用人类可读关键字的页面的URL的一部分。
为了使URL易于用户输入,通常也删除或替换特殊字符。例如,带重音的字符通常被英语字母中的字母代替;标点符号通常会被删除;和空格(必须将其编码为%20或+)替换为破折号(-)或下划线(_),从美学上讲更令人愉悦。
我开发了一个照片共享网站,用户可以在该网站上上传,共享和查看照片。
所有页面都是自动生成的,而我无需掌握标题。由于照片的标题或用户的名称可能包含重音字符或空格,因此我需要一个函数来自动创建标签并保持可读的URL。
我创建了以下函数,该函数替换带重音符号(âèêëçî),删除标点符号和不良字符(#@&〜^!)并以破折号转换空格。
PHP”显示标记为“ php”的问题”):
function sluggable($str) { $before = array( 'àáâãäåòóôõöøèéêëðçìíîïùúûüñšž', '/[^a-z0-9\s]/', array('/\s/', '/--+/', '/---+/') ); $after = array( 'aaaaaaooooooeeeeeciiiiuuuunsz', '', '-' ); $str = strtolower($str); $str = strtr($str, $before[0], $after[0]); $str = preg_replace($before[1], $after[1], $str); $str = trim($str); $str = preg_replace($before[2], $after[2], $str); return $str; }
似乎还可以,可能还不完整。查看http://code.google.com/p/php-slugs/中的代码示例。