artisan / 人名
2.1.0
2019-10-22 04:40 UTC
Requires
- illuminate/contracts: ^5.5|^6.0
- illuminate/support: ^5.5|^6.0
Requires (Dev)
- phpunit/phpunit: ^7.3
This package is auto-updated.
Last update: 2020-02-07 23:16:15 UTC
README
Basecamp 的 name_of_person 库 的移植。
一个库,可以更清晰地拆分用户的姓名。
这是一个相当简化的库,没有考虑到姓名处理的任何边缘情况,只是将名字后面的所有内容都视为姓氏。
安装
composer require artisan/name-of-person
升级说明
API 现在返回 PersonName
类的实例而不是字符串,以便进行方法链。这应该不会影响大多数用例。
使用方法
use Artisan\NameOfPerson\PersonName; $name = new PersonName('Terry Crews'); $name->full; // => "Terry Crews" $name->first; // => "Terry" $name->last; // => "Crews" $name->initials; // => "TC" $name->familiar; // => "Terry C." $name->abbreviated; // => "T. Crews" $name->sorted; // => "Crews, Terry" $name->mentionable; // => "terryc" $name->possessive; // => "Terry Crews'" $name->first->possessive // => Terry's $name->last->possessive // => Crews'
已移除 Laravel Trait
由于有些项目我想使用不同的键来存储姓名,所以我最终没有使用 trait。相反,如果您想使用此库,我强烈建议使用不同的属性,以避免在构建 JSON API 时发生冲突。
use Artisan\NameOfPerson\PersonName; class User { public function getNameAttribute() { return new PersonName($this->attributes['full_name']); } }