enzyme / 名称
PHP 的名称操作库。
Requires
- php: >=5.5.0
- danielstjules/stringy: ^2.1
Requires (Dev)
- mockery/mockery: ^0.9.4
- phpunit/phpunit: ^4.8
- satooshi/php-coveralls: ^0.6.1
This package is not auto-updated.
Last update: 2024-09-14 19:14:39 UTC
README
PHP 的名称操作库。
这是什么?
如果你的网站接受用户数据,形式为 名、姓,可选地还有 中间名 和/或 前缀(如 Dr.、Mrs.),然后你想格式化这些数据 - 这个包就是为你准备的。
安装
composer require enzyme/name
用法
标准名和姓。
use Enzyme\Name\Simple; $name = Simple::fromString('Hubert Cumberdale'); echo $name->getFirst(); // Hubert echo $name->getLast(); // Cumberdale
格式化名和姓。
use Enzyme\Name\Simple; use Enzyme\Name\Format; $name = Simple::fromString('Hubert Cumberdale'); $fmt = Format($name); echo $fmt->like('First'); // Hubert echo $fmt->like('First L.'); // Hubert C. echo $fmt->like('Last, F.'); // Cumberdale, H. // Quickfire option. echo Format::nameLike($name, 'First L.'); // Hubert C.
格式化全名(包括中间名/前缀)。
use Enzyme\Name\Simple; use Enzyme\Name\Format; $name = Simple::fromString('Dr. Hubert Alberto Cumberdale'); echo Format::nameLike($name, 'First M. Last'); // Hubert A. Cumberdale echo Format::nameLike($name, 'P. First M. Last'); // Dr. Hubert A. Cumberdale echo Format::nameLike($name, 'P. Last, F. M.'); // Dr. Cumberdale, H. A.
名称选项
Simple 提供以下访问器,它们返回 Part 实例。
$name->getPrefix(); $name->getFirst(); $name->getMiddle(); $name->getLast();
每个 Part 有两个选项
$part->long() 返回名称的长版本,例如:Hubert $part->short() 返回名称的短版本,例如:H。
你可以用 3 种方式构建一个新的名称
Simple::fromString(...) 简单地传入一个字符串,它将“智能”地尝试从其中解析出名称。
Simple::fromArgs(...) 简单地传入参数,它将尝试从它们构建全名。名称的构建基于传入参数的数量,因此 1 个参数等于 first 名,2 个参数 -> first last,3 个参数 -> first middle last,4 个参数 -> prefix first middle last。
因此,要使用 fromArgs 构造函数创建 Hubert Cumberdale 这个名称,它的样子会是 Simple::fromArgs('Hubert', 'Cumberdale');。
最后一个选项提供了最大的控制权,Simple::strict()。它简单地返回一个新的 Simple 对象,然后你可以使用设置器显式地构建它:$simple->prefix(...);、$simple->first(...);、$simple->middle(...); 和 $simple->last(...);。每个设置器都可以被可选调用,以构建不同配置的名称。
格式化器选项
以下示例使用名称 Mr. Hubert Alfred Smith Cumberdale
任何其他字符都将保持不变。例如,你可以使用以下格式字符串 Last, F. M. 从以下名称创建 Cumberdale, H. A. S.。
