mattczerner / vokativ
修改自 bigit/vokativ 库,适用于 PHP 版本 8。该库用于将捷克语人名降至第五格,用于生成称呼。
1.0.1
2024-06-05 18:03 UTC
Requires
- php: ^7.4 || ^8.0
- ext-mbstring: *
Requires (Dev)
- phpunit/phpunit: ^10.0
This package is auto-updated.
Last update: 2024-09-05 18:28:35 UTC
README
- 正确称呼您的用户! *
安装
$ composer require mattczerner/vokativ
支持 PHP 7+ 和 8+ 版本
使用
<?php
use Vokativ\Name;
$name = new Name();
$name->vokativ('Petr'); // 'petře'
$name->vokativ('Novák'); // 'nováku'
$name->vokativ('Adriana'); // 'adriano'
$name->vokativ('Fialová'); // 'fialová'
Vokativ($name, $isWoman = null, $isLastName = null) 函数接受第一个参数为单数第一格的姓氏,并返回其第五格形式。函数的返回值始终为 string 类型的字符串。请注意,对于非捷克语起源的名字,此函数可能无法正确工作。
其他可选参数包括
$isWoman
如果希望将输入的名字视为女性,请使用 true。
如果希望将输入的名字视为男性,请使用 false。
默认情况下,性别将通过自动检测。
<?php
$name->vokativ('Michel'); // 'micheli' - automaticky jako mužské
$name->vokativ('Michel', false); // 'micheli'
$name->vokativ('Michel', true); // 'michel'
$isLastName
如果希望将输入的名字视为姓氏,请使用 true。
如果希望将输入的名字视为名字,请使用 false。
默认情况下,名字类型将通过自动检测。
此参数的值仅影响女性名字的变形。
<?php
$name->vokativ('Ivanova'); // 'ivanova' - automaticky příjmení
$name->vokativ('Ivanova', true, true); // 'ivanova'
$name->vokativ('Ivanova', true, false); // 'ivanovo'
自动性别检测
vokativ 库还提供了一个简单的函数来根据名字或姓氏检测性别。根据 统计办公室 的数据,该函数在 99.7% 的情况下都能正确工作。
<?php
$name->isMale('Michal'); // true
$name->isMale('Novák'); // true
$name->isMale('Tereza'); // false
$name->isMale('Nováková'); // false
感谢
此库作为 Michal Danilák 开发的 Python 库 Vokativ 的重新实现而诞生。https://github.com/Mimino666/vokativ/.