awssat/str-helper

一个灵活且强大的 PHP 字符串操作助手

2.1 2018-03-13 16:41 UTC

This package is auto-updated.

Last update: 2024-09-20 12:08:55 UTC


README

Latest Version on Packagist StyleCI Build Status

⚡️ 一个灵活、简单且强大的 PHP 字符串操作助手。它提供了方法链的魔法,使得在视图中包含它更加容易和简洁。它支持大部分 PHP 内置字符串函数(以及其他有用的方法,如:contains, equal, append, prepend ...)。

str('Hi World')->replace(' ', '+')->lower();

为什么使用这个而不是其他字符串操作包?

这是一个 PHP 默认字符串函数的包装器,为了提供非常强大的方法链和条件。您不需要学习新的方法名称,只需使用您所知道的 PHP 函数名称。

安装/使用

您可以通过 composer 在本地项目中安装此包

$ composer require awssat/str-helper

安装后,只需开始使用 StrHelper 类,或简单地使用助手函数 str()

示例

str('Hi Hello')->strReplace(' ', '-');
>> hi-hello
str('Hi Hello')->prepend('[')->append(']');
>> [Hi Hello]

如果您需要一个显式的字符串值用于条件,请使用 "get"。

if(str('Hi')->lower->get() == 'hi') {
        echo 'yes'; 
}
>> yes

存在一个 "tap" 方法

str('LINK.COM')->tap(function($v){ print($v); })->lower();
>> LINK.COM

对于回调,请使用 "do" 方法

str('<a>link.com</a>')->do(function($string){ 
        return strip_tags($string); 
});
>> link.com

或者

str('<a>link.com</a>')->do(function(){   
        $this->stripTags();
});
>> link.com

您可能还会发现使用 camelCase 而不是 snake_case 作为方法名称也是可行的。

您也可以使用条件,if(..),else(),endif()

str('<html>hi</html>')
            ->ifContains('hi')
            ->upper();
>> <HTML>HI</HTML>       

if 可以接受匿名函数

str('<html>hi</html>')
            ->if(function(){
                    return $this->contains('hi');
            })
            ->upper();
>> <HTML>HI</HTML>       

所有方法都可以静态调用,如下

StrHelper::capitalize('life');

或者使用 str() 函数。

str()::capitalize('nomad');

[UTF-8 支持] 如果安装了 mbstring 库,并且您调用了 strpos 函数,则会调用 mb_strpos。

测试

简单使用

$ composer test

致谢

许可协议

MIT 许可协议 (MIT)。有关更多信息,请参阅 许可文件