使用 PHP 将空格转换为破折号和小写

Convert spaces to dash and lowercase with PHP

我尝试了一些很长的方法,但我觉得我做错了什么。

这是我的代码

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

这使得 $blob 小写,但另外我需要删除 $blob 中的所有空格并用短划线 (-) 替换。

我试过了,但没用

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

我可以一行完成所有这些吗?

是的,只需传递 strtolower($blob) 的 return 值作为 str_replace 的第三个参数(您有 $string)。

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

对于字符串换行,您可以使用专用的 wordwrap 函数。

str_replace

str_replace online documentation

<?php

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

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

wordwrap

wordwrap online documentation

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

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

online code: https://3v4l.org/keWGr

顺便说一句,在 WordPress 中你可以使用 sanitize_title_with_dashes

https://developer.wordpress.org/reference/functions/sanitize_title_with_dashes/