2013-11-10 4 views
5

я меняю все пробелы дефисом в моем сценарии, как это:PHP заменить все пробелы с дефисом

$final = str_replace(' ','-',$final); The - is the only thing I replace. 

Что я замена в Band Name - Song Name Так что в этом случае, если у меня было что-то вроде:

Metallica - Hero of the Day 

Я в конечном итоге с:

Metallica---Hero-of-the-Day 

Обратите внимание на 3 --- там?

Можете ли вы предложить изящный способ заканчиваясь всего лишь один - вместо 3.

я могу продолжать делать str_replace, пока это не будет сделано, но не видит правильно.

ответ

9

Используйте регулярное выражение меняется несколько пробелов или дефисов с одним дефисом:

$final = preg_replace('#[ -]+#', '-', $text); 
Смежные вопросы