eden / string
自动加载,错误和异常处理
Requires
- php: >=5.4.1
- eden/core: 4.*
README
- 安装
- 简介
- API
- addslashes
- bin2hex
- chunkSplit
- convertUudecode
- convertUuencode
- countChars
- crypt
- explode
- hex2bin
- htmlEntityDecode
- htmlentities
- htmlspecialchars
- htmlspecialcharsDecode
- ireplace
- istr
- lcfirst
- len
- ltrim
- md5
- nl2br
- pad
- pbrk
- pos
- pregReplace
- quotedPrintableDecode
- quotedPrintableEncode
- quotemeta
- repeat
- replace
- rev
- rot13
- rtrim
- sha1
- shuffle
- sprintf
- str
- stripTags
- stripcslashes
- stripslashes
- substr
- substrCompare
- substrCount
- substrReplace
- tok
- tolower
- toupper
- tr
- trim
- ucfirst
- ucwords
- vsprintf
- wordwrap
- 贡献
====
安装
composer install eden/string
====
启用 Eden
以下文档使用 eden()
作为示例参考。启用此功能需要额外步骤,如本节所述,如果使用以下方式访问此包则不需要。
Eden_String_Index::i();
当使用 composer 时,没有简单的方法来访问包中的函数。作为一个解决方案,在您的代码中添加此常量将允许 eden()
在之后可用。
Eden::DECORATOR;
例如
Eden::DECORATOR;
eden()->inspect('Hello World');
====
简介
链式字符串方法。当在一行中使用多个 PHP 字符串函数时,会使代码更难阅读。这是因为程序员需要训练从内到外阅读代码,而不是传统地从左到右(除非你住在日本)。Eden 的数据类型是对象,这可以纠正这个可读性问题。
str_replace('L', 'y', strtoupper(substr('hello', 1, 3))); // Eyy
上述示例表明我们必须按如下方式阅读:首先 substr()
,然后 strtoupper()
,接着是 str_replace()
,内部函数先,然后向外扩展。以下示例显示了使用类型如何使这一行更容易阅读。
echo eden('string')->set('hello')->substr(1, 3)->toupper()->replace('L', 'y'); //--> Eyy
垂直表示如下,对开发者来说更令人愉悦。
echo eden('string')
->set('hello')
->substr(1, 3)
->toupper()
->replace('L', 'y'); //--> Eyy
当输出字符串对象时,将自动转换为原生字符串。Eden 覆盖了 PHP 提供的大多数字符串函数。以下是您可以线性执行的一组字符串方法。
====
API
====
addslashes
与 PHP 相同:addslashes
用法
eden('string')->addslashes();
示例
eden('string')->set('Hel"\'lo')->addslashes();
====
bin2hex
与 PHP 相同:bin2hex
用法
eden('string')->bin2hex();
示例
eden('string')->set('01010100100')->bin2hex();
====
chunkSplit
与 PHP 相同:chunk_split
用法
eden('string')->chunkSplit(int $length, string $separator);
示例
eden('string')->set('Hello')->chunkSplit(2, ':');
====
convertUudecode
与 PHP 相同:convert_uudecode
用法
eden('string')->convertUudecode();
示例
eden('string')->set('%2&5L;&\`\n`\n')->convertUudecode();
====
convertUuencode
与 PHP 相同:convert_uuencode
用法
eden('string')->convertUuencode();
示例
eden('string')->set('Hello')->convertUuencode();
====
countChars
与 PHP 相同:count_chars
用法
eden('string')->countChars(int $min_length);
示例
eden('string')->set('Hello')->countChars(1);
====
crypt
与 PHP 相同:crypt
用法
eden('string')->crypt(string $salt);
示例
eden('string')->set('Hello')->crypt('123');
====
explode
与 PHP 相同:explode
用法
eden('string')->explode(string $separator[,int $limit]);
示例
eden('string')->set('1-2-3-4')->explode('-');
====
hex2bin
与 PHP 相同:hex2bin
用法
eden('string')->hex2bin();
示例
eden('string')->set('3031303130313030313030')->hex2bin();
====
htmlEntityDecode
与 PHP 相同:html_entity_decode
用法
eden('string')->htmlEntityDecode();
示例
eden('string')->set('&')->htmlEntityDecode();
====
htmlentities
与 PHP 相同:htmlentities
用法
eden('string')->htmlentities();
示例
eden('string')->set('&')->htmlentities();
====
htmlspecialchars
与 PHP 相同:htmlspecialchars
用法
eden('string')->htmlspecialchars();
示例
eden('string')->set('&')->htmlspecialchars();
====
htmlspecialcharsDecode
与 PHP 相同:htmlspecialchars_decode
用法
eden('string')->htmlspecialcharsDecode();
示例
eden('string')->set('&')->htmlspecialcharsDecode();
====
lcfirst
与 PHP 相同:lcfirst
用法
eden('string')->lcfirst();
示例
eden('string')->set('Hello')->lcfirst();
====
ltrim
与 PHP 相同:ltrim
用法
eden('string')->ltrim();
示例
eden('string')->set(' Hello')->ltrim();
====
md5
与 PHP 相同:md5
用法
eden('string')->md5();
示例
eden('string')->set('Hello')->md5();
====
nl2br
与 PHP 相同:nl2br
用法
eden('string')->nl2br();
示例
eden('string')->set("Hel\nlo")->nl2br();
====
pregReplace
与 PHP 相同:preg_replace
用法
eden('string')->pregReplace(string $regex, string $replacement);
示例
eden('string')->set('Hello')->pregReplace('/e/', 'i');
====
quotedPrintableDecode
与 PHP 相同:quoted_printable_decode
用法
eden('string')->quotedPrintableDecode();
示例
eden('string')->set('Hello')->quotedPrintableDecode();
====
quotedPrintableEncode
与 PHP 相同:quoted_printable_encode
用法
eden('string')->quotedPrintableEncode();
示例
eden('string')->set('Hello')->quotedPrintableEncode();
====
quotemeta
与 PHP 相同:quotemeta
用法
eden('string')->quotemeta();
示例
eden('string')->set('Hello')->quotemeta();
====
rtrim
与 PHP 相同:rtrim
用法
eden('string')->rtrim();
示例
eden('string')->set('Hello ')->rtrim();
====
sha1
与 PHP 相同:sha1
用法
eden('string')->sha1();
示例
eden('string')->set('Hello')->sha1();
====
sprintf
与 PHP 相同:sprintf
用法
eden('string')->sprintf([mixed $variable[, mixed $variable2 ..]]);
示例
eden('string')->set('Hello %s')->sprintf('You');
====
ireplace
与 PHP 相同:str_ireplace
用法
eden('string')->ireplace(string $needle, string $replacement);
示例
eden('string')->set('Hello')->ireplace('l', 'y');
====
pad
与 PHP 相同:str_pad
用法
eden('string')->pad(int $length, string $replacement);
示例
eden('string')->set('Hello')->pad(7, 'o');
====
repeat
与 PHP 相同:str_repeat
用法
eden('string')->repeat(int $multiplier);
示例
eden('string')->set('Hello')->repeat(3);
====
replace
与 PHP 相同:str_replace
用法
eden('string')->replace(string $needle, string $replacement);
示例
eden('string')->set('Hello')->replace('l', 'y');
====
rot13
与 PHP 相同:str_rot13
用法
eden('string')->rot13();
示例
eden('string')->set('Hello')->rot13();
====
shuffle
与 PHP 相同:str_shuffle
用法
eden('string')->shuffle();
示例
eden('string')->set('Hello')->shuffle();
====
stripTags
与 PHP 相同:strip_tags
用法
eden('string')->stripTags([string $allowableTags]);
示例
eden('string')->set('H<b>e</b>llo')->stripTags();
====
stripcslashes
与 PHP 相同:stripcslashes
用法
eden('string')->stripcslashes();
示例
eden('string')->set('Hello')->stripcslashes();
====
stripslashes
与 PHP 相同:stripslashes
用法
eden('string')->stripslashes();
示例
eden('string')->set('He\\llo')->stripslashes();
====
istr
与 PHP 相同:stristr
用法
eden('string')->istr(string $needle);
示例
eden('string')->set('Hello')->istr('e');
====
len
与 PHP 相同:strlen
用法
eden('string')->len();
示例
eden('string')->set('Hello')->len();
====
pbrk
与 PHP 相同:strpbrk
用法
eden('string')->pbrk(string $needle);
示例
eden('string')->set('Hello')->pbrk('abcdefgh');
====
pos
与 PHP 相同:strpos
用法
eden('string')->pos(string $needle);
示例
eden('string')->set('Hello')->pos('e');
====
rev
与PHP中的strrev相同
用法
eden('string')->rev();
示例
eden('string')->set('Hello')->rev();
====
str
与PHP中的strstr相同
用法
eden('string')->str(string $needle);
示例
eden('string')->set('Hello')->str('e');
====
tok
与PHP中的strtok相同
用法
eden('string')->tok(string $needle);
示例
eden('string')->set('Hello')->tok('e');
====
tolower
与PHP中的strtolower相同
用法
eden('string')->tolower();
示例
eden('string')->set('Hello')->tolower();
====
toupper
与PHP中的strtoupper相同
用法
eden('string')->toupper();
示例
eden('string')->set('Hello')->toupper();
====
tr
与PHP中的strtr相同
用法
eden('string')->tr(string $needle, string $replacement);
示例
eden('string')->set('Hello')->tr('e', 'y');
====
substr
与PHP中的substr相同
用法
eden('string')->substr(int $start[, int $length]);
示例
eden('string')->set('Hello')->substr(2, 2);
====
substrCompare
与PHP中的substr_compare相同
用法
eden('string')->substrCompare(string $needle, int $index);
示例
eden('string')->set('Hello')->substrCompare('el', 3);
====
substrCount
与PHP中的substr_count相同
用法
eden('string')->substrCount(string $needle);
示例
eden('string')->set('Hello')->substrCount('l');
====
substrReplace
与PHP中的substr_replace相同
用法
eden('string')->substrReplace(string $replacement, int $start, int $length);
示例
eden('string')->set('Hello')->substrReplace('yy', 2, 2);
====
trim
与PHP中的trim相同
用法
eden('string')->trim();
示例
eden('string')->set('Hello')->trim();
====
ucfirst
与PHP中的ucfirst相同
用法
eden('string')->ucfirst();
示例
eden('string')->set('Hello')->ucfirst();
====
ucwords
与PHP中的ucwords相同
用法
eden('string')->ucwords();
示例
eden('string')->set('Hello')->ucwords();
====
vsprintf
与PHP中的vsprintf相同
用法
eden('string')->vsprintf(array $replacements);
示例
eden('string')->set('Hello %s')->vsprintf(array('You'));
====
wordwrap
与PHP中的wordwrap相同
用法
eden('string')->wordwrap(int $length[, string $replacement]);
示例
eden('string')->set('Hello You')->wordwrap(3, '<br />');
====
对Eden的贡献遵循Github工作流程。请在贡献之前阅读。
##使用Eden仓库和您的分支设置您的机器
- 分支仓库
- 在本地终端中创建一个新分支,从您分支的
v4
分支创建,分支名称应描述您的更改。可能的分支名称类型- bugfix
- feature
- improvement
- 进行您的更改。始终确保在所有提交上签名(git commit -s -m "提交信息")
##制作拉取请求
- 请确保在制作拉取请求之前运行
phpunit
。 - 将您的代码推送到您的远程分支版本。
- 回到您的GitHub上的分支版本,并提交一个拉取请求。
- Eden的开发者将审查您的代码,并在它被分类为合适时将其合并。