boomdraw/canonicalizer

适用于 Laravel 的 Canonicalizer 包

v2.0.0 2019-12-11 00:44 UTC

This package is auto-updated.

Last update: 2024-09-11 15:39:12 UTC


README

适用于 Laravel 的 Canonicalizer 包

Build Status StyleCI Code Coverage Quality Score Latest Version on Packagist Total Downloads PHP Version License

安装

通过 Composer

$ composer require boomdraw/canonicalizer

Laravel

该包将自动注册自己。

Lumen

在引导文件中取消以下行的注释

// bootstrap/app.php:
$app->withFacades();

注册 CanonicalizerServiceProvider

// bootstrap/app.php:
$app->register(Boomdraw\Canonicalizer\CanonicalizerServiceProvider::class);

使用示例

use Boomdraw\Canonicalizer\Facades\Canonicalizer;

use Canonicalizer;

方法

Canonicalizer

Canonicalizer::canonicalize()

参数 string $string, bool $nullEmpty = true

返回规范化字符串或 null 如果 $nullEmpty = true 并且字符串为空。

Canonicalizer::email()

参数: string $email

返回规范化电子邮件地址,其中在 @ 前没有点或 null 如果字符串不包含 @

Canonicalizer::slug()

参数: string $title, string $separator = '-', ?string $language = 'en'

\Illuminate\Support\Str::slug() 别名

Canonicalizer::url()

参数: string $url, string $separator = '-'

该函数调用 trim() 函数,将斜杠 (/) 和反斜杠 (\) 添加到字符列表,并使用指定的分隔符对 URL 路径项进行规范。

Canonicalizer::uri()

参数: string $url, string $separator = '-'

Canonicalizer::url() 别名

Canonicalizer::macro()

参数 string $name, object|callable $macro = true

Canonicalizer 使用 Macroable 特性,因此您可以动态地向类添加方法。

Canonicalizer::macro('replaceSpaces', function(string $string) {
    return str_replace(' ', '', $string);  
});

Canonicalizer::replaceSpaces('Hello World!') === 'HelloWorld!';

测试

您可以使用以下命令运行测试

composer test

贡献

有关详细信息以及待办事项列表,请参阅 CONTRIBUTING

安全

如果您发现任何与安全相关的问题,请通过电子邮件 pkgsecurity@boomdraw.com 而不是使用问题跟踪器。

许可证

MIT