如何使用 PHP 将 PascalCase 字符串转换为 Laravel 7 中可用的 slug?

How can I convert PascalCase string to a usable slug in Laravel 7 with PHP?

我目前有一个值为"ExtraOption"的变量。我想知道是否有可能(可能有 Laravel 助手)将这个字符串转换成可用的 slug。例如:"extra-option".

任何人都可以帮我解决一个单一的、干净的解决方案吗?

尝试使用此代码:

use Illuminate\Support\Str;

...
Str::slug(implode(' ', preg_split('/(?=[A-Z])/', 'camelCaseToSlug')))
> camel-case-to-slug
...

希望对您有所帮助

您可以使用 Str::kebab() 方法将给定的字符串转换为 kebab-case:

use Illuminate\Support\Str;

$converted = Str::kebab('ExtraOption');

// extra-option

Laravel 7 具有新功能 Fluent String Operations,它提供了多种有用的字符串操作函数。

kebab

kebab 方法将给定的字符串转换为 kebab 大小写:

use Illuminate\Support\Str;

$converted = Str::of('ExtraOption')->kebab();

// extra-option