我正在編程一個博客,我希望URIs是標題,像問題標題在這裏在stackoverflow或像wordpress。
淨化URI的規則是什麼?
在PHP中是否有這樣做的代碼呢?如何用PHP清理標題URI?
由於提前,
奧馬爾
我正在編程一個博客,我希望URIs是標題,像問題標題在這裏在stackoverflow或像wordpress。
淨化URI的規則是什麼?
在PHP中是否有這樣做的代碼呢?如何用PHP清理標題URI?
由於提前,
奧馬爾
很多CMS的已經實現了這樣的事情,the one of Wordpress已經張貼在another question。一般來說,您也許對question about this technique感興趣。
通常你會希望你的URL只有0-9和a-z,並確保一切都是小寫。用破折號( - )替換空格,並去掉其餘的亂碼。
所以它幾乎已經知道了。
這可能是有一個連字符替換任何非字母數字字符的最短途徑:
trim(preg_replace('/[^a-z0-9-]+/', '-', strtolower($str)), '-')
在現場的情況下出現故障:
<?php
function pathauto_cleanstring($string)
{
$url = $string;
$url = preg_replace('~[^\\pL0-9_]+~u', '-', $url); // substitutes anything but letters, numbers and '_' with separator
$url = trim($url, "-");
$url = iconv("utf-8", "us-ascii//TRANSLIT", $url); // TRANSLIT does the whole job
$url = strtolower($url);
$url = preg_replace('~[^-a-z0-9_]+~', '', $url); // keep only letters, numbers, '_' and separator
return $url;
}
這工作就像一個魅力! –
如果鏈接頁面出現故障,您可能需要發佈完整的答案,而不僅僅是鏈接。 – karancan
謝謝你,這不完美的工作 – jck