我不确定如何正确地说出这个问题,道歉。
我正在尝试从数据库中的名称创建干净的虚拟目录。这些名称可以是foo bar
,foo/bar
,foo / bar
,foo: bar
等等。
我正在尝试将spaces
,:
,/
替换为-
以清理网址,以便我拥有:
$search_array = array(" ","-", ":", "/");
$clean_url = str_replace($search_array, "-", $name);
如果是foo bar
,则会将其更改为foo-bar
,这是我想要的结果,但当涉及foo : bar
之类的内容时,它会更改为foo---bar
如果找到多个结果,有没有办法让str_replace只替换一次?
我考虑过将[space]:[space]
这样的内容放在搜索数组中,但我有大约600,000个名字,我不确定它们的组合数量。