phlak/twine

字符串操作,更上一层楼!

维护者

详细信息

github.com/PHLAK/Twine

源代码

问题

资助包维护!
PHLAK
Paypal

4.2.0 2020-09-03 04:13 UTC

README

Twine

字符串操作,更上一层楼! -- by, Chris Kankiewicz (@PHLAK)

Join the Community Become a Sponsor One-time Donation
Latest Stable Version Total Downloads GitHub branch checks state License

简介

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。

可用方法

afterappendbase64base64Decodebase64EncodebcryptbeforecamelCasecharacterschunkcontainscountcrc32cryptdecryptechoencodingencryptendsWithequalsexplodefirstformatfromhexhexEncodehexDecodeinsensitiveMatchinsertinisAlphabeticisAlphanumericisEmptyisLowercaseisNotEmptyisNumericisPrintableisPunctuationisUppercaseisWhitespacejoinkebabCaselastlengthlowercaselowercaseFirstlowercaseWordsmatchmatchAllmatchesmd5nthpadpadBothpadLeftpadRightpascalCaseprependrepeatreplacereversesha1sha256shufflesimilaritysnakeCasesplitstartsWithstripstudlyCasesubstringtotrimtrimLefttrimRighttruncateuppercaseuppercaseFirstuppercaseWordsurlwordswrapwrapHardwrapSoft

方法链

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 许可证