imliam/php-name-of-person

适用于英语应用程序的名称。

v1.2.0 2022-04-28 15:20 UTC

This package is auto-updated.

Last update: 2024-08-28 19:57:27 UTC


README

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

适用于英语应用程序,其中姓名和姓氏合并时足够。这种方法不涵盖所有可能的命名情况,也不处理其他语言或头衔。

这是从Basecamp的同一名称Ruby包的一个粗略移植。

💾 安装

您可以使用以下命令使用Composer安装此软件包

composer require imliam/php-name-of-person:^1.1

📝 使用

此软件包提供了一个类,可以通过包含人的原始名称的字符串进行实例化。

该类有几种方法可以调用,以返回提供的名称的不同变体。

use ImLiam\NameOfPerson\Name;

$name = new Name('David Heinemeier Hansson');

$name->getFullName();       // "David Heinemeier Hansson"
$name->getFirstName();      // "David"
$name->getLastName();       // "Heinemeier Hansson"
$name->getInitials();       // "DHH"
$name->getInitials(true);   // "D.H.H."
$name->getFamiliar();       // "David H."
$name->getAbbreviated();    // "D. Heinemeier Hansson"
$name->getSorted();         // "Heinemeier Hansson, David"
$name->getMentionable();    // "davidh"
$name->getPossessive();     // "David Heinemeier Hansson's"
$name->getProperName();     // "David Heinemeier Hansson"

这些方法注意处理一些在处理来自用户输入的名称时经常难以处理和遗漏的情况,因此并不总是可靠的。

例如,带有粒子的名称可以使用getProperName()方法正确大写。

(new Name("lucas l'amour"))->getProperName(); // "Lucas l'Amour"
(new Name('t. von lieres und wilkau'))->getProperName(); // "T. von Lieres und Wilkau"

✅ 测试

composer test

🔖 更新日志

有关最近更改的更多信息,请参阅更新日志文件

⬆️ 升级

有关从先前版本升级的详细信息,请参阅升级文件

🎉 贡献

有关向项目贡献的详细信息,请参阅贡献文件行为准则

🔒 安全

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

👷 贡献者

♻️ 许可证

MIT许可证(MIT)。有关更多信息,请参阅许可证文件