str

其他类别 2025-08-19

关于

str / str

str ('Hello, 世界'); $ str ->last(2); // 世界 $ str ->chars(); // ['世', '界'] $ str ->ensureLeft('Hello, ') // Hello, 世界 ->ensureRight('!!!') // Hello, 世界!!! ->trimRight('!') // Hello, 世界 ->prepend(' str say - '); // str say - Hello, 世界 $send = function ( str ing $s) {}; $send(( str ing)$ str ); // same $send($ str ->get str ing()); // same">
 $ str = new str ( ' Hello, 世界' );
$ str -> last ( 2 ); // 世界
$ str -> chars (); // ['世', '界']

$ str
    -> ensureLeft ( ' Hello, ' ) // Hello, 世界
    -> ensureRight ( ' !!! ' ) // Hello, 世界!!!
    -> trimRight ( ' ! ' ) // Hello, 世界
    -> prepend ( ' str say - ' ); // str say - Hello, 世界

$ send = function ( str ing $ s ) {};
$ send (( str ing ) $ str ); // same
$ send ( $ str -> get str ing ()); // same 

安装

< str ONG>要求

  • PHP7.1
str/ str ">
composer require str / str 

特征

  • str ongly键入
  • 没有例外
  • 快速地
  • 新功能

具有多字节支持的快速str库。受“ str Ingy”库的启发,重点是速度。

LIB使用PHP7功能,并且不会引发任何例外(因为所有输入参数仅键入str )。该代码完全由单元测试涵盖。


功能索引:

一个

  • 首先
  • 后来
  • 附加
  • 附录识别器

b

  • 首先
  • Beforelast
  • 之间

c

  • 骆驼
  • 崩溃的空间
  • 包含
  • 包含
  • 包含
  • countsub str

d

  • 破折号
  • 划界

e

  • 末日
  • 末日
  • nesureleft
  • Necureright

f

  • 第一的

g

  • str

h

  • haslowercase
  • hasprefix
  • Hassuffix
  • hasuppercase
  • htmldecode
  • htmlencode
  • 人性化

  • 索引
  • 索引的植物
  • 插入
  • 伊斯帕
  • 异脑数
  • ISBASE64
  • isblank
  • Isemail
  • ishexadecimal
  • ISIPV4
  • ISIPV6
  • ISJSON
  • 等级
  • 复发
  • ISUUIDV4
  • ISHOPERCASE

j

  • 加入

l

  • 最后的
  • 长度
  • 线
  • 最长的commonprefix
  • 最长的诉讼str
  • 最长的commonsuffix
  • lowercasefirst

m

  • 制作
  • 匹配
  • 移动

o

  • 覆盖

p

  • 垫子
  • padleft
  • padright
  • 流行音乐
  • 伪装
  • 预登

  • 引用

r

  • 随机的
  • Regexreplace
  • 去除
  • 射面
  • 重复
  • 代替
  • 更换限制性
  • 撤销

s

  • 安全
  • 转移
  • Shiftreversed
  • 洗牌
  • Slugify
  • 分裂
  • Startswith
  • Startswithany
  • str ipwhitespace
  • sub str
  • 环绕
  • Swapcase

t

  • 整齐的
  • 标题
  • to ascii
  • Toboolean
  • tolowercase
  • tospaces
  • totabs
  • Totitlecase
  • touppercase
  • 修剪
  • trimleft
  • 特里奇
  • 截短

  • 强调
  • 无名
  • 上空
  • 高度

w

功能列表:

首先

首次出现$ needle后,将$ sub str $ times的插入物插入了原始str 。

str ('foo bar baz'); echo ( str ing)$ str ->afterFirst('a', 'duh', 2); // foo baduhduhr baz">
 $ str = new str ( ' foo bar baz ' );
echo ( str ing ) $ str -> afterFirst ( ' a ' , ' duh ' , 2 );
// foo baduhduhr baz

< str ong>参数:

  • str $针
  • $ str str
  • int $ times

< str ong>返回:

  • str

后来

最后一次出现$ seade后,将$ sub str $ times插入到原始str中。

str ('foo bar baz'); echo ( str ing)$ str ->afterLast('a', 'duh', 2); // foo bar baduhduhz">
 $ str = new str ( ' foo bar baz ' );
echo ( str ing ) $ str -> afterLast ( ' a ' , ' duh ' , 2 );
// foo bar baduhduhz

< str ong>参数:

  • str $针
  • $ str str
  • int $ times

< str ong>返回:

  • str

附加

将$ sub附加到str 。

str ('/Acme'); echo ( str ing)$ str ->append('/'); // /Acme/">
 $ str = new str ( ' /Acme ' );
echo ( str ing ) $ str -> append ( ' / ' );
// /Acme/

< str ong>参数:

  • $ str

< str ong>返回:

  • str

附录识别器

将随机str到由$ possiblechars组成的随机str (如果指定)为$ size和$ sizemax之间的给定$大小或随机长度。

str ('foo'); echo $ str ->appendUniqueIdentifier(3, -1, 'foba_rz'); // foozro">
 $ str = new str ( ' foo ' );
echo $ str -> appendUniqueIdentifier ( 3 , - 1 , ' foba_rz ' );
// foozro

< str ong>参数:

  • int $ size
  • int $ sizemax
  • $ str

< str ong>返回:

  • str

返回$ pos的字符,索引从0开始。

str ('/Acme/'); echo ( str ing)$ str ->at(2); // c">
 $ str = new str ( ' /Acme/ ' );
echo ( str ing ) $ str -> at ( 2 );
// c

< str ong>参数:

  • int $ pos

< str ong>返回:

  • str

首先

在第一次出现$针头之前,将$ sub str $ times插入到原始str上。

str ('foo bar baz'); echo ( str ing)$ str ->beforeFirst('a', 'duh'); // foo bduhar baz">
 $ str = new str ( ' foo bar baz ' );
echo ( str ing ) $ str -> beforeFirst ( ' a ' , ' duh ' );
// foo bduhar baz

< str ong>参数:

  • str $针
  • $ str str
  • int $ times

< str ong>返回:

  • str

Beforelast

在上次出现$ deade之前,将$ sub str $ times插入到原始str中。

str ('foo bar baz'); echo ( str ing)$ str ->beforeLast('a', 'duh'); // foo bar bduhaz">
 $ str = new str ( ' foo bar baz ' );
echo ( str ing ) $ str -> beforeLast ( ' a ' , ' duh ' );
// foo bar bduhaz

< str ong>参数:

  • str $针
  • $ str str
  • int $ times

< str ong>返回:

  • str

之间

返回$启动和$ end(如果发现)或空的str之间的str 。可以提供可选的$偏移量,以开始搜索开始str 。

str ('/Acme/'); echo ( str ing)$ str ->between('/', '/'); // Acme">
 $ str = new str ( ' /Acme/ ' );
echo ( str ing ) $ str -> between ( ' / ' , ' / ' );
// Acme

< str ong>参数:

  • $ str
  • $ str
  • int $偏移

< str ong>返回:

  • str

骆驼

返回骆驼str的版本。修剪空间周围的修剪,使字母在数字,空间,破折号和下划线下大写,并删除空间,破折号以及下划线。

str ('ac me'); echo ( str ing)$ str ->camelize(); // acMe">
 $ str = new str ( ' ac me ' );
echo ( str ing ) $ str -> camelize ();
// acMe

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • str

返回由str中的字符组成的数组。

str ('/Acme/'); echo ( str ing)$ str ->chars(); // ['/', 'A', 'c', 'm', 'e', '/']">
 $ str = new str ( ' /Acme/ ' );
echo ( str ing ) $ str -> chars ();
// ['/', 'A', 'c', 'm', 'e', '/']

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 大批

切成$台阶的块将原始的str切成薄片。

str ('foo bar baz'); echo $ str ->chop(2); // ['fo', 'o ', 'ba', 'r ', 'ba', 'z']">
 $ str = new str ( ' foo bar baz ' );
echo $ str -> chop ( 2 );
// ['fo', 'o ', 'ba', 'r ', 'ba', 'z']

< str ong>参数:

  • int $ step

< str ong>返回:

  • 大批

崩溃的空间

修剪str并用一个空间代替连续的白色空间字符。这包括选项卡和新线字符,以及多字节的空格,例如薄空间和意识形态空间。

str ('foo bar baz'); echo ( str ing)$ str ->collapseWhitespace(); // foo bar baz">
 $ str = new str ( ' foo bar baz ' );
echo ( str ing ) $ str -> collapseWhitespace ();
// foo bar baz

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • str

包含

检查是否包含$ str str 。

str ('/Acme/'); echo $ str ->contains('/'); // true $ str = new str ('/Acme/'); echo $ str ->contains('a', false); // true">
 $ str = new str ( ' /Acme/ ' );
echo $ str -> contains ( ' / ' );
// true
$ str = new str ( ' /Acme/ ' );
echo $ str -> contains ( ' a ' , false );
// true

< str ong>参数:

  • str $针
  • bool $ case敏感

< str ong>返回:

  • 布尔

包含

str如果包含所有$针,则返回true,否则为false。默认情况下,比较对病例敏感,但可以通过将$ case敏感的false设置为不敏感。

str ('/Accmme/'); echo $ str ->containsAll(['m', 'c', '/']); // true">
 $ str = new str ( ' /Accmme/ ' );
echo $ str -> containsAll ([ ' m ' , ' c ' , ' / ' ]);
// true

< str ong>参数:

  • 数组$针
  • bool $ case敏感

< str ong>返回:

  • 布尔

包含

返回true,如果包含任何$ str ,否则为false。默认情况下,比较对病例敏感,但可以通过将$ case敏感的false设置为不敏感。

str ('/Accmme/'); echo $ str ->containsAny(['foo', 'c', 'bar']); // true">
 $ str = new str ( ' /Accmme/ ' );
echo $ str -> containsAny ([ ' foo ' , ' c ' , ' bar ' ]);
// true

< str ong>参数:

  • 数组$针
  • bool $ case敏感

< str ong>返回:

  • 布尔

countsub str

返回给定的str $针的发生次数。默认情况下,比较对病例敏感,但可以通过将$ case敏感的false设置为不敏感。

str ('/Accmme/'); echo $ str ->countSub str ('m'); // 2">
 $ str = new str ( ' /Accmme/ ' );
echo $ str -> countSub str ( ' m ' );
// 2

< str ong>参数:

  • str $针
  • bool $ case敏感

< str ong>返回:

  • int

破折号

返回一个小写和修剪的,用破折号str 。在大写字符之前插入破折号(除了str的第一个字符),并代替空间和下划线。

str ('Ac me'); echo ( str ing)$ str ->dasherize(); // ac-me">
 $ str = new str ( ' Ac me ' );
echo ( str ing ) $ str -> dasherize ();
// ac-me

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • str

划界

返回由给定$定界符分开的小写和修剪的str 。在大写字符之前插入定界符(除了第一个str ),并代替空格,破折号和下划线。 Alpha定界符未转换为小写。

str ('Ac me'); echo ( str ing)$ str ->delimit('#'); // ac#me">
 $ str = new str ( ' Ac me ' );
echo ( str ing ) $ str -> delimit ( ' # ' );
// ac#me

< str ong>参数:

  • $定界符

< str ong>返回:

  • str

末日

返回true,如果以$ sub str的str结束,则否则为false。默认情况下,比较对病例敏感,但可以通过将$ case敏感的false设置为不敏感。

str ('/Accmme/'); echo $ str ->endsWith('e/'); // true">
 $ str = new str ( ' /Accmme/ ' );
echo $ str -> endsWith ( ' e/ ' );
// true

< str ong>参数:

  • $ str str
  • bool $ case敏感

< str ong>返回:

  • 布尔

末日

如果以$ sub str的任何一个结束, str返回true,否则为false。默认情况下,比较对病例敏感,但可以通过将$ case敏感的false设置为不敏感。

str ('/Accmme/'); echo $ str ->endsWithAny(['foo', 'e/', 'bar']); // true">
 $ str = new str ( ' /Accmme/ ' );
echo $ str -> endsWithAny ([ ' foo ' , ' e/ ' , ' bar ' ]);
// true

< str ong>参数:

  • 阵列$ sub str
  • bool $ case敏感

< str ong>返回:

  • 布尔

nesureleft

检查是否存在$ str ,并在不存在的情况下进行str $前缀。

str ('Acme/'); echo ( str ing)$ str ->ensureLeft('/'); // /Acme/ $ str = new str ('/Acme/'); echo ( str ing)$ str ->ensureLeft('/'); // /Acme/">
 $ str = new str ( ' Acme/ ' );
echo ( str ing ) $ str -> ensureLeft ( ' / ' );
// /Acme/
$ str = new str ( ' /Acme/ ' );
echo ( str ing ) $ str -> ensureLeft ( ' / ' );
// /Acme/

< str ong>参数:

  • $ str

< str ong>返回:

  • str

Necureright

检查是否存在$ str ,并在不存在的str下附加$。

str ('/Acme'); echo ( str ing)$ str ->ensureRight('/'); // /Acme/ $ str = new str ('/Acme/'); echo ( str ing)$ str ->ensureRight('/'); // /Acme/">
 $ str = new str ( ' /Acme ' );
echo ( str ing ) $ str -> ensureRight ( ' / ' ); // /Acme/
$ str = new str ( ' /Acme/ ' );
echo ( str ing ) $ str -> ensureRight ( ' / ' ); // /Acme/

< str ong>参数:

  • $ str

< str ong>返回:

  • str

第一的

返回str的第一个$长度字符。

str ('/Acme/'); echo ( str ing)$ str ->first(2); // /A">
 $ str = new str ( ' /Acme/ ' );
echo ( str ing ) $ str -> first ( 2 );
// /A

< str ong>参数:

  • int $长度

< str ong>返回:

  • str

str

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • str

haslowercase

返回true如果str包含较低的案例字符,则否则为false。

str ('Acme'); echo $ str ->hasLowerCase(); // true">
 $ str = new str ( ' Acme ' );
echo $ str -> hasLowerCase ();
// true

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

hasprefix

检查str时是否有$前缀。

str ('/Acme/'); echo $ str ->hasPrefix('/'); // true">
 $ str = new str ( ' /Acme/ ' );
echo $ str -> hasPrefix ( ' / ' );
// true

< str ong>参数:

  • str $前缀

< str ong>返回:

  • 布尔

Hassuffix

检查str时是否有$ $。

str ('/Acme/'); echo $ str ->hasSuffix('/'); // true">
 $ str = new str ( ' /Acme/ ' );
echo $ str -> hasSuffix ( ' / ' );
// true

< str ong>参数:

  • $ $ str

< str ong>返回:

  • 布尔

hasuppercase

返回如果包含str字符,则返回true,否则为false。

str ('Acme'); echo $ str ->hasUpperCase(); // true">
 $ str = new str ( ' Acme ' );
echo $ str -> hasUpperCase ();
// true

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

htmldecode

将所有HTML实体转换为其适用字符。 html_entity_decode的别名。有关标志列表,请参阅PHP文档。

str = new str ('<Acme>'); echo ( str ing)$ str ->htmlDecode(); // ">
 $ str = new str ( ' <Acme> ' );
echo ( str ing ) $ str -> htmlDecode ();
// 

< str ong>参数:

  • int $旗

< str ong>返回:

  • str

htmlencode

将所有适用的字符转换为HTML实体。 htmlentities的别名。有关标志列表,请参阅PHP文档。

str (''); echo ( str ing)$ str ->htmlEncode(); // <Acme>">
 $ str = new str ( '  ' );
echo ( str ing ) $ str -> htmlEncode ();
// <Acme>

< str ong>参数:

  • int $旗

< str ong>返回:

  • str

人性化

str的单词,用空格取代了下划线。

str ('foo_id'); echo ( str ing)$ str ->humanize(); // Foo">
 $ str = new str ( ' foo_id ' );
echo ( str ing ) $ str -> humanize ();
// Foo

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • str

索引

返回str中首次出现$针的索引,如果找不到-1。接受可以从中开始搜索的可选$偏移。

str ('/Accmme/'); echo $ str ->indexOf('m'); // 4">
 $ str = new str ( ' /Accmme/ ' );
echo $ str -> indexOf ( ' m ' );
// 4

< str ong>参数:

  • str $针
  • int $偏移

< str ong>返回:

  • int

索引的植物

返回最后一次出现$ str的索引,如果找不到的话,则返回错误。接受可以从中开始搜索的可选$偏移。偏移量可能是否定的,从str中的最后一个字符计数。

str ('/Accmme/'); echo $ str ->indexOfLast('m'); // 5">
 $ str = new str ( ' /Accmme/ ' );
echo $ str -> indexOfLast ( ' m ' );
// 5

< str ong>参数:

  • str $针
  • int $偏移

< str ong>返回:

  • int

插入

在提供的$索引时将$ sub str插入到str中。

str ('/Ace/'); echo ( str ing)$ str ->insert('m', 3); // /Acme/">
 $ str = new str ( ' /Ace/ ' );
echo ( str ing ) $ str -> insert ( ' m ' , 3 );
// /Acme/

< str ong>参数:

  • $ str str
  • int $索引

< str ong>返回:

  • str

伊斯帕

如果仅包含字母str ,则返回true,否则为false。

str ('Acme'); echo $ str ->isAlpha(); // true">
 $ str = new str ( ' Acme ' );
echo $ str -> isAlpha ();
// true

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

异脑数

如果仅包含字母和数字字符, str返回为true,否则为false。

str ('Acme1'); echo $ str ->isAlphanumeric(); // true">
 $ str = new str ( ' Acme1 ' );
echo $ str -> isAlphanumeric ();
// true

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

ISBASE64

检查此str是否有效Base64编码数据。函数确实编码(解码(s))=== s,所以这不是那么快。

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

isblank

如果仅包含空格str ,则返回true,否则为false。

str ('Acme'); echo $ str ->isBlank(); // false">
 $ str = new str ( ' Acme ' );
echo $ str -> isBlank ();
// false

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

Isemail

将原始的原始str分成“@”定界符,并在结果阵列由2个部分组成的情况下返回true。

str ('test@test@example.com'); echo $ str ->isEmail(); // false">
 $ str = new str ( ' test@test@example.com ' );
echo $ str -> isEmail ();
// false

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

ishexadecimal

如果仅包含十六进制的str ,则返回为true,否则为错误。

str ('Acme'); echo $ str ->isHexadecimal(); // false">
 $ str = new str ( ' Acme ' );
echo $ str -> isHexadecimal ();
// false

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

ISIPV4

如果这是有效的IPv4地址,请返回true

str = new str ('1.0.1.0'); echo $ str ->isIpV4(); // true">
 $ str = new str ( ' 1.0.1.0 ' );
echo $ str -> isIpV4 ();
// true

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

ISIPV6

如果这是有效的IPv6地址,则返回true

str = new str ('2001:cdba::3257:9652'); echo $ str ->isIpV6(); // true">
 $ str = new str ( ' 2001:cdba::3257:9652 ' );
echo $ str -> isIpV6 ();
// true

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

ISJSON

返回如果是json, str返回true,否则为false。与php 5.x中的JSON_DECODE不同,此方法与PHP 7和其他JSON解析器一致,因为空str不被视为有效的JSON。

str ('Acme'); echo $ str ->isJson(); // false">
 $ str = new str ( ' Acme ' );
echo $ str -> isJson ();
// false

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

等级

返回如果仅包含较低的案例str ,则返回true,否则为false。

str ('Acme'); echo $ str ->isLowerCase(); // false">
 $ str = new str ( ' Acme ' );
echo $ str -> isLowerCase ();
// false

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

复发

如果str化,则返回为true,否则为错误。

str ('Acme'); echo $ str ->isSerialized(); // false">
 $ str = new str ( ' Acme ' );
echo $ str -> isSerialized ();
// false

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

ISUUIDV4

给定的UUID是否有破折号没关系。

str = new str ('76d7cac8-1bd7-11e8-accf-0ed5f89f718b'); echo $ str ->isUUIDv4(); // false $ str = new str ('ae815123-537f-4eb3-a9b8-35881c29e1ac'); echo $ str ->isUUIDv4(); // true">
 $ str = new str ( ' 76d7cac8-1bd7-11e8-accf-0ed5f89f718b ' );
echo $ str -> isUUIDv4 ();
// false
$ str = new str ( ' ae815123-537f-4eb3-a9b8-35881c29e1ac ' );
echo $ str -> isUUIDv4 ();
// true

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

ISHOPERCASE

如果仅包含str字符,则返回true,否则为false。

str ('Acme'); echo $ str ->isUpperCase(); // false">
 $ str = new str ( ' Acme ' );
echo $ str -> isUpperCase ();
// false

< str ong>参数: < str ong>什么都没有

< str ong>返回:

  • 布尔

加入

与给定的$分离器一起加入原始str str

str ('foo'); echo $ str ->join('*', ['bar', 'baz']); // foo*bar*baz">
 $ str = new str ( ' foo ' );
echo $
					
					
下载源码

通过命令行克隆项目:

git clone https://github.com/fe3dback/str.git