laravel怎么使用Str和Arr辅助类的常用方法_laravel Str/Arr辅助类常用方法教程

laravel的Str和Arr类提供字符串与数组处理方法,如Str::lower、Str::contains、Arr::get、Arr::pluck等,提升代码可读性与开发效率。

laravel怎么使用Str和Arr辅助类的常用方法_laravel Str/Arr辅助类常用方法教程

Laravel 提供了两个非常实用的辅助类 StrArr,用于处理字符串和数组。它们封装了许多常用操作,让代码更简洁、可读性更强。下面介绍这两个类中常用的静态方法及其使用方式。

Str 类常用方法

Str 类位于 IlluminateSupportStr,提供了丰富的字符串处理功能。使用前无需手动引入,Laravel 已自动加载。

1. 字符串转小写或大写

将字符串统一格式化:

  • Str::lower('Hello World'); // 'hello world'
  • Str::upper('Hello World'); // 'HELLO WORLD'

2. 首字母大写

将每个单词首字母大写:

  • Str::title('laravel is awesome'); // 'Laravel Is Awesome'

3. 判断字符串是否以指定内容开头或结尾

  • Str::startsWith('https://example.com', 'https'); // true
  • Str::endsWith('document.pdf', '.pdf'); // true

4. 检查字符串是否包含某些子串

支持多个关键词判断:

laravel怎么使用Str和Arr辅助类的常用方法_laravel Str/Arr辅助类常用方法教程

法语写作助手

法语助手旗下的AI智能写作平台,支持语法、拼写自动纠错,一键改写、润色你的法语作文。

laravel怎么使用Str和Arr辅助类的常用方法_laravel Str/Arr辅助类常用方法教程31

查看详情 laravel怎么使用Str和Arr辅助类的常用方法_laravel Str/Arr辅助类常用方法教程

  • Str::contains('The quick brown fox', ['quick', 'fox']); // true
  • Str::contains('Hello Laravel', 'php'); // false

5. 生成唯一字符串(如 UUID)

  • Str::uuid(); // 生成类似 "a1b2c3d4-..." 的唯一标识
  • Str::orderedUuid(); // 基于时间排序的 UUID,适合数据库索引

6. 截取字符串

  • Str::substr('Laravel Framework', 0, 7); // 'Laravel'
  • Str::substr('Laravel', -3); // 'vel'

7. 转为驼峰命名或蛇形命名

  • Str::camel('first_name'); // 'firstName'
  • Str::snake('lastName'); // 'last_name'

8. 生成 URL 友好字符串(slug)

  • Str::slug('Hello Laravel World', '-'); // 'hello-laravel-world'

Arr 类常用方法

Arr 类位于 IlluminateSupportArr,专门用于增强 PHP 数组的操作能力。

1. 获取数组中的值(带默认值)

避免因键不存在而报错:

  • Arr::get(['name' => 'Tom', 'age' => 25], 'name'); // 'Tom'
  • Arr::get(['user' => ['email' => 'a@b.com']], 'user.email'); // 支持点语法嵌套访问
  • Arr::get([], 'name', 'Guest'); // 'Guest'(默认值)

2. 设置数组值

3. 判断数组是否有某个键(支持点语法)

  • Arr::has(['user' => ['email' => 'a@b.com']], 'user.email'); // true
  • Arr::has($data, ['user.name', 'user.id']); // 多个键同时检查

4. 过滤数组元素

  • Arr::where(['a' => 1, 'b' => 2, 'c' => 3], function ($value, $key) { return $value > 1; }); // 返回 [‘b’ => 2, ‘c’ => 3]

5. 获取数组中的某一列

类似于 sql 中的 select 字段:

  • Arr::pluck([['name' => 'A'], ['name' => 'B']], 'name'); // ['A', 'B']
  • Arr::pluck($users, 'email', 'id'); // 用 id 作为键返回 email 列表

6. 合并数组(递归

  • Arr::add(['name' => 'Tom'], 'age', 20); // 添加不存在的键
  • Arr::collapse([[1, 2], [3, 4]]); // 合并多个数组为一维 [1,2,3,4]

7. 随机获取数组元素

  • Arr::random(['red', 'green', 'blue']); // 随机返回一个颜色

实际应用场景示例

比如在控制器中处理请求数据时:

  • $slug = Str::slug($request->input('title'));
  • $status = Arr::get($config, 'user.status', 'active');
  • if (Str::contains($url, ['admin', 'dashboard'])) { ... }

基本上就这些。熟练掌握 Str 和 Arr 的常用方法,能显著提升开发效率,减少手动判断和循环。Laravel 的文档也建议优先使用这些辅助函数来保持代码一致性。

以上就是laravel怎么使用Str和Arr辅助类的常用方法_laravel Str/Arr辅助类常用方法教程的详细内容,更多请关注php中文网其它相关文章!

上一篇
下一篇
text=ZqhQzanResources