funfirst / vokativ
用于将捷克语名字转换为第五格的库,用于生成称呼。
v1.0.1
2022-03-14 21:04 UTC
Requires
- php: ^5.5 || ^7.0 || ^8.0
Requires (Dev)
- phpunit/phpunit: ^4.8
This package is auto-updated.
Last update: 2024-09-15 03:03:34 UTC
README
- 正确称呼您的用户! *
原始 fork 来自 bigit/vokativ,为了支持 PHP 8 和一些小改动。
安装
$ composer require funfirst/vokativ
支持的 PHP 版本 5.6+
使用
<?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/。