lukaswhite / capitalizer
一个用于智能首字母大写的简单库。
0.0.1
2021-09-18 06:38 UTC
Requires
- php: >=7.0
Requires (Dev)
- phpunit/php-code-coverage: ^9.2
- phpunit/phpunit: ^9.5
README
智能字符串首字母大写的包。
PHP 包含用于字符串中单词首字母大写的 ucwords
函数,但它相当愚蠢。
考虑以下名称
Nigel de Jong
Rajiv van La Parra
Malcolm McDonald
...或者以下标题
To Be or Not to Be
The Wizard of Oz
Gone With the Wind
...或者以下地点
Newton on the Willow
Stoke on Trent
Stoke D'Abernon
这个库旨在正确处理这类情况。
用法
无参数创建实例
use Lukaswhite\Capitalizer\Capitalizer; $capitalizer = new Capitalizer();
方法提供了四种首字母大写的方法
title()
例如,书籍、电影等的标题。
print $capitalizer->title('to be or not to be'); // prints To Be or Not to Be
name()
人的名字
print $capitalizer->name('RAJIV VAN LA PARRA'); // prints Rajiv van La Parra
place()
地点的名称。
print $capitalizer->place('STOKE ON TRENT'); // prints Stoke on Trent
string()
通用字符串
print $capitalizer->title('this is a string); // prints This is a String
自定义行为
您可以使用以下方法之一或多个来自定义库的行为
$capitalizer = new Capitalizer(); $capitalizer->addLowercase('con'); // e.g. Chilli con Carne $capitalizer->addUppercase('php'); // good for acronyms $capitalizer->addLowercaseName('of'); // only applies to names; e.g. Jesus of Nazareth $capitalizer->addPrefix('Mc'); $capitalizer->addSuffix('\'s');
请注意,所有这些方法都返回当前实例(即流畅的接口),因此可以串联在一起,例如
$capitalizer = new Capitalizer(); $capitalizer->addLowercase('con') ->addUppercase('php') ->addLowercaseName('of') ->addPrefix('Mc') ->addSuffix('\'s');
有关这些方法的更多解释,请参阅源代码。