我想将所有非字母数字字符转换为连字符 (-)(破折号)以获得优雅的 URL。为此,我使用以下方法:
$title = 'Any Authentic PHP Script / Third Party & @ 10 $ tool to';
$title .= 'Convert HTML to BBcode, BBcode to HTML';
$url = preg_replace("/[^0-9a-zA-Z ]/m", "", $title );
$url = preg_replace("/ /", "-", $url);
它输出以下内容:
Any-Authentic-PHP-Script--Third-Party---10--tool-to-Convert-HTML-to-BBcode-BBcode-to-HTML
但是,您会注意到,输出中有一些不需要的双连字符 ( --
) 和一些三连字符 ( --
)。我希望每个单词之间只有一个连字符。我怎样才能实现我的目标?