我有这个功能,从字符串生成SEO友好的URL:如何提高我的搜索引擎优化的URL生成
function seo_titleinurl_generate($title)
{
$title=substr($title,0,160);
$title = ereg_replace(" ", "-", $title); // replace spaces by "-"
$title = ereg_replace("á", "a", $title); // replace special chars
$title = ereg_replace("í", "i", $title); // replace special chars
$title = ereg_replace("ó", "o", $title); // replace special chars
$title = ereg_replace("ú", "u", $title); // replace special chars
$title = ereg_replace("ñ", "n", $title); // replace special chars
$title = ereg_replace("Ñ", "n", $title); // replace special chars
$title = strtolower(trim($title)); // lowercase
$title = preg_replace("/([^a-zA-Z0-9_-])/",'',$title); // only keep standard latin letters and numbers, hyphens and dashes
if($title=="" or $title=="-"){
$mr=rand(1,99999);
$mt=time();
$title=$mr.$mt;
}
return $title;
}
但在某些情况下,当字符串中有多个空格,如:最(3 spaces here)
不错的恶作剧! 它的产生:最恶劣的恶作剧
我希望它忽略许多空间,并使他们只有一个破折号。
感谢
只是字符替换,str_replace函数和如更快的我不会用ereg_replace。 – neo 2010-01-18 16:39:50