wapmorgan / morphos
完全使用PHP编写的俄语和英语语法的解决方案。提供类来屈折人名、地名、名词变格和复数形式、生成基数词和序数词、拼写金额和时间。
3.2.29
2023-08-08 22:15 UTC
Requires
- php: >=5.4.0
- ext-mbstring: *
Requires (Dev)
- php: >=7.3
- phpunit/phpunit: ~9.5.20
Suggests
- ext-readline: For using interactive version of script
- dev-master
- 3.2.29
- 3.2.28
- 3.2.27
- 3.2.26
- 3.2.25
- 3.2.24
- 3.2.23
- 3.2.22
- 3.2.21
- 3.2.20
- 3.2.19
- 3.2.18
- 3.2.17
- 3.2.16
- 3.2.15
- 3.2.14
- 3.2.13
- 3.2.12
- 3.2.11
- 3.2.10
- 3.2.9
- 3.2.8
- 3.2.7
- 3.2.6
- 3.2.5
- 3.2.4
- 3.2.3
- 3.2.2
- 3.2.1
- 3.2.0
- 3.0.9
- 3.0.8
- 3.0.7
- 3.0.6
- 3.0.5
- 3.0.4
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.5
- 2.3.4
- 2.3.3
- 2.3.2
- 2.3.1
- 2.3.0
- 2.2.9
- 2.2.8
- 2.2.7
- 2.2.6
- 2.2.5
- 2.2.4
- 2.2.3
- 2.2.2
- 2.2.1
- 2.2.0
- 2.1.0
- 2.0.2
- 2.0.1
- 2.0.0
- 1.0.0
This package is auto-updated.
Last update: 2024-09-14 23:51:48 UTC
README
完全使用PHP编写的俄语和英语语法的解决方案,以PHP库或Docker镜像的形式提供,以便集成到非PHP堆栈中。
功能
- [✓] 人名屈折(Фамилия, Имя, Отчество)(俄语)
- [✓] 地名屈折(Страны/Города)(俄语)
- [✓] 名词和形容词的变格/复数形式(俄语,英语)
- [✓] 数字屈折(количественные и порядковые)(俄语,英语)
- [✓] 拼写金额(俄语)
- [✓] 拼写时间单位和时间间隔(俄语,英语)
目录
- 安装
- 快速开始
- 文档
- 贡献
安装
作为PHP库
- 通过Composer下载库
composer require wapmorgan/morphos
或通过适配器安装
- Blade适配器: wapmorgan/morphos-blade
- Twig适配器: wapmorgan/morphos-twig
- Yii2适配器: wapmorgan/yii2-inflection
作为独立的服务
服务器从 Docker镜像 启动,并监听8080端口的GET请求。
将服务集成到您的堆栈中(例如,docker compose)
services: morphos: image: wapmorgan/morphos:3.2.29 ports: - 8093:8080
或作为独立容器
docker run --env NUM_WORKERS=4 --rm --publish 8093:8080 -v wapmorgan/morphos:3.2.29
提示:如果将大量负载发送到服务,请调整NUM_WORKERS
环境变量。默认值为4。
在文档中有 API: 标记的函数,作为服务端点公开。只需传递与PHP函数/方法相同的参数即可。
快速开始
俄语
// Inflect russian names: morphos\Russian\inflectName('Иванов Петр', 'родительный') => 'Иванова Петра' // Inflect geographical names: morphos\Russian\GeographicalNamesInflection::getCase('Москва', 'родительный') => 'Москвы' // Pluralize russian nouns and adjectives: morphos\Russian\pluralize(10, 'новый дом') => '10 новых домов' // Generate russian cardinal numerals: morphos\Russian\CardinalNumeralGenerator::getCase(567, 'именительный') => 'пятьсот шестьдесят семь' // Generate russian ordinal numerals: morphos\Russian\OrdinalNumeralGenerator::getCase(961, 'именительный') => 'девятьсот шестьдесят первый' // Generate russian time difference morphos\Russian\TimeSpeller::spellDifference(time() + 3600, morphos\TimeSpeller::DIRECTION) => 'через 1 час' // other functions described in README-ru.md
英语
// Pluralize english nouns: morphos\English\pluralize(10, 'house') => '10 houses' // Generate english cardinal numerals: morphos\English\CardinalNumeralGenerator::generate(567) => 'five hundred sixty-seven' // Generate english ordinal numerals: morphos\English\OrdinalNumeralGenerator::generate(961) => 'nine hundred sixty-first' // Generate english time difference morphos\English\TimeSpeller::spellDifference(time() + 3600, morphos\TimeSpeller::DIRECTION) => 'in 1 hour'
文档
- Русская морфология 在 README-ru.md 文件中
- English morphology 在 README-en.md 文件中
贡献
有关此内容的更多信息,请参阅 CONTRIBUTING.md