string — преобразование пробелов в тире и строчные буквы с переполнением стека

Я пробовал несколько долгих методов, но я думаю, что я делаю что-то не так.

Вот мой код

<?php print strtolower($blob); ?>

Что делает $blob в нижнем регистре, но дополнительно мне нужны пробелы в $blob быть удаленным и замененным чертой (-).

Я попробовал это, но это не сработало

<?php print (str_replace(' ', '-', $string)strtolower($blob)); ?>

Могу ли я сделать все это в одной строке?

20

Решение

Да, просто передайте возвращаемое значение strtolower($blob) в качестве третьего аргумента str_replace (где у вас есть $string).

<?php print (str_replace(' ', '-', strtolower($blob))); ?>
41

Другие решения

Для переноса строк вы можете использовать выделенный перенос слова функция.

str_replace

str_replace онлайн документация

<?php

$str = 'Convert spaces to dash and LowerCase with PHP';

echo str_replace(' ', '-', strtolower($str));
// return: convert-spaces-to-dash-and-lowercase-with-php

перенос слова

документальная документация

$str = 'Convert spaces to dash and LowerCase with PHP';

echo wordwrap(strtolower($str), 1, '-', 0);
// return: convert-spaces-to-dash-and-lowercase-with-php

онлайн код: https://3v4l.org/keWGr

4