PHPackages                             mucts/string - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. mucts/string

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

mucts/string
============

The MuCTS String package.

1.0.0(5y ago)02MITPHPPHP ^7.4

Since Aug 16Pushed 5y agoCompare

[ Source](https://github.com/mucts/string)[ Packagist](https://packagist.org/packages/mucts/string)[ RSS](/packages/mucts-string/feed)WikiDiscussions master Synced 1w ago

READMEChangelogDependencies (6)Versions (2)Used By (0)

[![](https://camo.githubusercontent.com/e27473a2cc76c25e71f47614427ff9e36425423a903be0290741a035ed26d42b/68747470733a2f2f696d616765732e6d756374732e636f6d2f696d6167652f6578705f6465665f77686974652e706e67)](https://camo.githubusercontent.com/e27473a2cc76c25e71f47614427ff9e36425423a903be0290741a035ed26d42b/68747470733a2f2f696d616765732e6d756374732e636f6d2f696d6167652f6578705f6465665f77686974652e706e67)

 [![Build Status](https://camo.githubusercontent.com/58fa085670938679fc19977399cd4f4faf9e39b72f22d21092e601805b3f8d79/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6d756374732f737472696e672f6261646765732f6275696c642e706e67)](https://scrutinizer-ci.com/g/mucts/string) [![Code Intelligence Status](https://camo.githubusercontent.com/10d1357617d747008efe060ca08dd47ee819c3c4eb2b8b3c98c2e8ea7f1fbcaf/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6d756374732f737472696e672f6261646765732f636f64652d696e74656c6c6967656e63652e737667)](https://scrutinizer-ci.com/g/mucts/string) [![Scrutinizer Code Quality](https://camo.githubusercontent.com/7e044c7dc492c29feb963a00cf7dae7ecae5569c7695dfb8fc985090caecf8e1/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f6d756374732f737472696e672f6261646765732f7175616c6974792d73636f72652e706e67)](https://scrutinizer-ci.com/g/mucts/string) [![Total Downloads](https://camo.githubusercontent.com/f8b927169a90e2c0596b828e95c0d38617084faf4b195a8fa174cc7924f88d8a/68747470733a2f2f706f7365722e707567782e6f72672f6d756374732f737472696e672f642f746f74616c2e737667)](https://packagist.org/packages/mucts/string) [![Latest Stable Version](https://camo.githubusercontent.com/91117e0fae077197eadef78ffc5f7d948426251aece03c8e6aeaaf9828a1ccc9/68747470733a2f2f706f7365722e707567782e6f72672f6d756374732f737472696e672f762f737461626c652e737667)](https://packagist.org/packages/mucts/string) [![License](https://camo.githubusercontent.com/2074479e8b722fefc76aa3845ad58167128b13e2cfeb0890f93154b578cab22a/68747470733a2f2f706f7365722e707567782e6f72672f6d756374732f737472696e672f6c6963656e73652e737667)](https://packagist.org/packages/mucts/string)

Str 字符串#
========

[](#str-字符串)

> `Str`类提供一个便捷的操作字符串的封装。

使用
==

[](#使用)

- `Str::camel`

> 将给定字符串「蛇式」转化为 `camelCase`「驼峰式」

```
use MuCTS\String\Str;

$converted = Str::camel('foo_bar');
// fooBar
```

- `Str::endsWith`

> 函数判断指定的字符串是否以给定的值结尾

```
use MuCTS\String\Str;

$result = Str::endsWith('This is my name', 'name');
// true
```

- `Str::kebab`

> 将给定的「驼峰式」字符串转化为`kebab-case`「短横式」字符串

```
use MuCTS\String\Str;

$converted = Str::kebab('fooBar');
// foo-bar
```

- `Str::snake`

> `Str::snake` 函数将给定的字符串转换为 `snake_case`「蛇式」

```
use MuCTS\String\Str;

$converted = Str::snake('fooBar');
// foo_bar
```

- `Str::startsWith`

> `Str::startsWith` 函数判断给定的字符串的开头是否是指定值

```
use MuCTS\String\Str;

$result = Str::startsWith('This is my name', 'This');
// true
```

- `Str::after`

> `Str::after` 函数返回在字符串中指定值之后的所有内容

```
use MuCTS\String\Str;

$slice = Str::after('This is my name', 'This is');
// ' my name'
```

- `Str::before`

> `Str::before` 函数返回在字符串中指定值之前的所有内容

```
use MuCTS\String\Str;

$slice = Str::before('This is my name', 'my name');
// 'This is '
```

- `Str::contains`

> `Str::contains` 函数判断给定的字符串是否包含给定的值（区分大小写）

```
use MuCTS\String\Str;

$contains = Str::contains('This is my name', 'my');

// true
```

- `Str::finish`

> `Str::finish` 函数将给定的字符串以给定的值结尾返回（如果它尚未以给定值结尾）

```
use MuCTS\String\Str;

$adjusted = Str::finish('this/string', '/');
// this/string/
$adjusted = Str::finish('this/string/', '/');
// this/string/
```

- `Str::is`

> `Str::is` 函数判断给定的字符串是否匹配给定的模式。星号 \* 可以用来表示通配符

```
use MuCTS\String\Str;
$matches = Str::is('foo*', 'foobar');
// true
$matches = Str::is('baz*', 'foobar');
// false
```

- `Str::limit`

> `Str::limit` 函数按给定的长度截断给定的字符串

```
use MuCTS\String\Str;
$truncated = Str::limit('The quick brown fox jumps over the lazy dog', 20);
// The quick brown fox...
```

> 你也可以传递第三个参数来改变将被追加到最后的字符串：

```
use MuCTS\String\Str;
$truncated = Str::limit('The quick brown fox jumps over the lazy dog', 20, ' (...)');
// The quick brown fox (...)
```

- `Str::orderedUuid`

> `Str::orderedUuid` 方法高效生成一个可存储在索引数据库列中的「第一时间」 `UUID`

```
use MuCTS\String\Str;
return (string) Str::orderedUuid();
```

- `Str::plural`

> `Str::plural` 函数将字符串转换为复数形式。该函数目前仅支持英文

```
use MuCTS\String\Str;
$plural = Str::plural('car');
// cars
$plural = Str::plural('child');
// children
```

> 你可以提供一个整数作为函数的第二个参数来检索字符串的单数或复数形式

```
use MuCTS\String\Str;
$plural = Str::plural('child', 2);
// children
$plural = Str::plural('child', 1);
// child
```

- `Str::random`

> `Str::random` 函数生成一个指定长度的随机字符串。这个函数用 `PHP` 的 `random_bytes` 函数

```
use MuCTS\String\Str;
$random = Str::random(40);
```

- `Str::replaceArray`

> `Str::replaceArray` 函数使用数组顺序替换字符串中的给定值

```
use MuCTS\String\Str;
$string = 'The event will take place between ? and ?';
$replaced = Str::replaceArray('?', ['8:30', '9:00'], $string);
// The event will take place between 8:30 and 9:00
```

- `Str::replaceFirst`

> `Str::replaceFirst` 函数替换字符串中给定值的第一个匹配项

```
use MuCTS\String\Str;

$replaced = Str::replaceFirst('the', 'a', 'the quick brown fox jumps over the lazy dog');
// a quick brown fox jumps over the lazy dog
```

`Str::replaceLast`

> `Str::replaceLast` 函数替换字符串中最后一次出现的给定值：

```
use MuCTS\String\Str;

$replaced = Str::replaceLast('the', 'a', 'the quick brown fox jumps over the lazy dog');
// the quick brown fox jumps over a lazy dog
```

- `Str::singular`

> `Str::singular` 函数将字符串转换为单数形式。该函数目前仅支持英文

```
use MuCTS\String\Str;

$singular = Str::singular('cars');
// car
$singular = Str::singular('children');
// child
```

- `Str::slug`

> `Str::slug` 函数将给定的字符串生成一个 `URL` 友好的 「`slug`」

```
use MuCTS\String\Str;

$slug = Str::slug('Laravel 5 Framework', '-');
// laravel-5-framework
```

- `Str::start`

> `Str::start` 函数将给定值添加到给定字符串的开始位置（如果字符串尚未以给定值开始）

```
use MuCTS\String\Str;

$adjusted = Str::start('this/string', '/');
// /this/string

$adjusted = Str::start('/this/string', '/');
// /this/string
```

- `Str::studly`

> `Str::studly` 函数将给定的字符串转换为 「变种驼峰命名」

```
use MuCTS\String\Str;

$converted = Str::studly('foo_bar');
// FooBar
```

- `Str::title`

> `Str::title` 函数将给定的字符串转换为「首字母大写」

```
use MuCTS\String\Str;

$converted = Str::title('a nice title uses the correct case');
// A Nice Title Uses The Correct Case
```

- `Str::uuid`

> `Str::uuid` 方法生成一个 `UUID`（版本 4）

```
use MuCTS\String\Str;

return (string) Str::uuid();
```

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity2

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

2101d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/102022?v=4)[Herry Leonard](/maintainers/herry)[@herry](https://github.com/herry)

---

Top Contributors

[![yuandeng](https://avatars.githubusercontent.com/u/69410645?v=4)](https://github.com/yuandeng "yuandeng (1 commits)")

### Embed Badge

![Health badge](/badges/mucts-string/health.svg)

```
[![Health](https://phpackages.com/badges/mucts-string/health.svg)](https://phpackages.com/packages/mucts-string)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.6k509.9M17.0k](/packages/laravel-framework)[illuminate/support

The Illuminate Support package.

583107.1M34.5k](/packages/illuminate-support)[firefly-iii/data-importer

Firefly III Data Import Tool.

7545.8k](/packages/firefly-iii-data-importer)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
