phlak / twine
字符串操作,更上一层楼!
Requires
- php: >=7.2
- ext-mbstring: *
- ext-openssl: *
Requires (Dev)
- php: >=7.4
- friendsofphp/php-cs-fixer: ^2.16.1
- phpunit/phpunit: ^9.1
- psy/psysh: ^0.10
- vimeo/psalm: ^3.15
This package is auto-updated.
Last update: 2024-08-29 04:42:59 UTC
README
字符串操作,更上一层楼! -- by, Chris Kankiewicz (@PHLAK)
简介
Twine 是一个具有表达性和流畅语法的字符串操作库。
要求
使用 Composer 安装
composer require phlak/twine
入门指南
首先,导入 Twine
use PHLAK\Twine;
然后通过创建一个 Twine\Str
对象并传入字符串作为第一个参数来实例化一个 Twine 对象。
$string = new Twine\Str('john pinkerton');
您也可以通过 make()
方法静态实例化一个 Twine\Str
对象。
$string = Twine\Str::make('john pinkerton');
或者使用全局的 str()
辅助方法。该方法仅接受一个字符串参数,并返回一个 Twine\Str
对象。
$string = str('john pinkerton');
一旦您有一个具体的 Twine\Str
实例,您就可以像处理其他字符串一样处理它。这包括输出它或使用 PHP 的任何内置字符串函数。
echo $string; // Echos 'john pinkerton' str_shuffle($string) // Returns something like 'enoipo ktnjhnr' strlen($string); // Returns 14
然而,Twine 的强大之处在于其内置方法。
$string->echo(); // Echos 'john pinkerton' $string->shuffle(); // Returns something like 'enoipo ktnjhnr' $string->length(); // Returns 14 // or some more interesting methods $string->reverse(); // Returns 'notreknip nhoj' $string->contains('pink'); // Returns true $stting->replace('pink', 'purple'); // Returns 'john purpleton' $string->snakeCase(); // Returns 'john_pinkerton'
此时,您可以通过调用其许多内置方法之一来开始使用 Twine。
可用方法
after • append • base64 • base64Decode • base64Encode • bcrypt • before • camelCase • characters • chunk • contains • count • crc32 • crypt • decrypt • echo • encoding • encrypt • endsWith • equals • explode • first • format • from • hex • hexEncode • hexDecode • insensitiveMatch • insert • in • isAlphabetic • isAlphanumeric • isEmpty • isLowercase • isNotEmpty • isNumeric • isPrintable • isPunctuation • isUppercase • isWhitespace • join • kebabCase • last • length • lowercase • lowercaseFirst • lowercaseWords • match • matchAll • matches • md5 • nth • pad • padBoth • padLeft • padRight • pascalCase • prepend • repeat • replace • reverse • sha1 • sha256 • shuffle • similarity • snakeCase • split • startsWith • strip • studlyCase • substring • to • trim • trimLeft • trimRight • truncate • uppercase • uppercaseFirst • uppercaseWords • url • words • wrap • wrapHard • wrapSoft
方法链
Twine 字符串可以通过链式方法流畅地操作。以下是一些示例链
执行子字符串比较
$string = new Twine\Str('john pinkerton'); $string->substring(5, 4)->equals('pink'); // Returns true
将文件编码为符合 RFC 2045 的规范。
$string = new Twine\Str(file_get_contents('garbage.bin')); $string->base64()->wrap(76, "\r\n", Twine\Config\Wrap::HARD);
更详细的说明可以在完整文档中找到,请访问 https://twine.phlak.net。
多字节字符串
Twine 通过依赖 PHP 的 多字节字符串扩展 (mbstring) 来执行字符串操作,以实现多字节字符串兼容性。因此,需要 mbstring 扩展。多字节字符串包括 UTF-8 和 UCS-2 等Unicode编码。
变更日志
可以在 GitHub 发布页面 找到更改列表。
故障排除
有关一般帮助和支持,请加入我们的 GitHub 讨论组 或在 Twitter 上联系我们。
请将错误报告发送到 GitHub 问题跟踪器。
版权
本项目遵循 MIT 许可证。