omarwebdev / plass
将PHP内置函数转换为类方法的终极解决方案!
Requires
- php: >8.0
Requires (Dev)
- pestphp/pest: ^1.22
This package is auto-updated.
Last update: 2024-09-12 17:07:31 UTC
README
介绍Plass,将PHP内置函数转换为类方法的终极解决方案!使用Plass,您可以更直观、更易读地访问PHP函数。
例如,现在可以像这样调用strtoupper函数:Str::of('some string')->toUpperCase()。这不仅使您的代码更易读,还使您更容易理解每个方法的作用,无需参考PHP手册。
Plass将涵盖所有常见的PHP函数,包括字符串操作、数组操作等。凭借其简洁、一致的API,您可以使用熟悉的方法名执行与PHP中相同的操作。
此外,Plass包含一个全面的测试套件,以确保与最新版本的PHP兼容,并确保您的代码将继续按预期工作。
无论是初学者还是有经验的开发者,Plass都将通过提供更好的、更直观的访问PHP函数的方式使您的生活更轻松。今天试试看,亲自感受差异!
为什么使用Plass?
-
提高可读性:通过将PHP函数转换为类方法,Plass使您的代码更易读、易懂。您现在可以使用直观且描述性的方法名,而不是使用难以理解的函数名,这使得跟踪代码逻辑更容易。
-
一致的API:Plass为所有函数提供一致的API,使您更容易记住如何执行每个操作。不再需要翻来覆去地查阅PHP手册来了解如何使用函数。
-
更好的代码组织:通过将函数封装到类中,Plass允许您将代码组织成有意义的组。这使得查找和重用代码更容易,也有助于防止命名冲突。
-
改进的语法:Plass使用流畅的语法,允许您将方法链在一起以执行复杂操作。这使得您的代码更简洁、更简洁,导致更少的错误和更易于维护。
-
全面的测试套件:Plass包含一个全面的测试套件,确保与最新版本的PHP兼容,并确保您的代码将继续按预期工作。
无论是初学者还是有经验的开发者,Plass都将通过提供更好的、更直观的访问PHP函数的方式使您的生活更轻松。那么,为什么不今天试试看,亲自感受差异呢?
字符串使用方法
创建字符串
PHP创建字符串的方法很简单,例如
$str = "Some String"; echo $str; // prints "Some String"
但是,当使用Plass时,情况略有不同,因为您必须创建Str类的新实例,例如
use OmarWebDev\Plass\Facade\Str; $str = new Str('Some String'); echo $str; // prints "Some String"
您还可以使用名为of的静态方法,而不是使用new关键字,例如
use OmarWebDev\Plass\Facade\Str; $str = Str::of('Some String'); // same as new Str('Some String') echo $str; // prints "Some String"
方法链
是的,Plass支持方法链,例如
use OmarWebDev\Plass\Facade\Str; $str = Str::of('Some String') ->toUpperCase(); echo $str; // prints "SOME STRING"
访问字符串值
在Plass中,您可以通过使用PHP类型转换等方式访问字符串,而无需调用任何方法
use OmarWebDev\Plass\Facade\Str; $str = Str::of('Some String'); $str = (string) $str; // returns "Some String"
然而,如果您不想使用PHP字符串类型转换,则可以使用toString方法,例如
use OmarWebDev\Plass\Facade\Str; $str = Str::of('Some String'); $str = $str->toString(); // same as (string) $str
访问特定索引的字符
虽然Plass使用类,但仍可以通过索引访问字符,例如
use OmarWebDev\Plass\Facade\Str; $str = Str::of('Some String'); $char = $str->charAt(0); // returns "S" $char = $str[0]; // returns "S"
更改字符串
您可以通过创建新实例轻松更改字符串,但假设您想保留旧字符串并只修改一个字符怎么办?Plass提供了在不创建新实例的情况下更改字符串中字符的方法,例如
use OmarWebDev\Plass\Facade\Str; $str = Str::of('Example'); $str[0] = 'R'; // changes letter "E" to "R" $str[] = ', Hello'; // adds ", Hello" to the string unset($str[0]); // removes the first letter in the string $str[0] = ''; // removes the first letter in the string echo $str; // prints "ample, Hello"
可用方法
只有返回 Str 的方法才是可链式调用的。可链式调用意味着你可以连续调用方法,例如:Str::of('someString')->toUpperCase()->trim()->shuffle()
charAt(int $index): string|null
此方法返回字符串中特定索引处的字符,如果索引超出范围则返回 null。
注意:原始字符串不会被修改。
toUpperCase(): Str
将字符串字母转换为大写。
toLowerCase(): Str
将字符串字母转换为小写。
repeat(int $count): string
将字符串重复指定次数。
注意:原始字符串不会被修改。
trim(): Str
删除字符串开头和结尾的空白字符。
substr(int $start, ?int $length): string
返回字符串的一部分。注意:原始字符串不会被修改。
substrReplace(array|string $replace, array|int $offset, array|int|null $length = null): Str
通过偏移量和长度替换字符串的一部分。
shuffle(): Str
打乱字符串字母的顺序,例如 abc 变成 bca。
replace(array|string $search, array|string $replace): Str
用其他字符串替换字符串中的一部分。
contains(string $search): bool
检查字符串是否包含子字符串。
贡献
欢迎提交拉取请求。对于重大更改,请先打开一个问题讨论您想要进行的更改。
请确保根据需要更新测试。
安装
复制仓库并创建一个新的分支。
安装依赖
composer install
运行测试
composer test