如何从Laravel数组中移除短横线及之前的所有内容?
解决方案:移除数组元素中短横线及之前的内容
针对你的需求,这里提供几种简洁的实现方式:
方法1:使用Laravel集合处理
利用Laravel的集合map方法遍历数组,结合字符串分割或截取操作:
$array = ['hr-34', 've-53', 'dv-65']; // 方式A:通过explode分割后取最后一段 $result = collect($array)->map(function ($item) { return end(explode('-', $item)); })->toArray(); // 方式B:通过strstr截取短横线后的内容 $result = collect($array)->map(function ($item) { return ltrim(strstr($item, '-'), '-'); })->toArray();
方法2:使用PHP原生函数处理
如果不需要依赖Laravel集合,直接用array_map配合字符串函数实现:
$array = ['hr-34', 've-53', 'dv-65']; $result = array_map(function ($item) { // strrchr找到最后一个短横线的位置,substr去掉开头的短横线 return substr(strrchr($item, '-'), 1); }, $array);
以上几种方法最终都会得到目标数组:['34', '53', '65']
内容的提问来源于stack exchange,提问作者Elisa
相关产品推荐
相关产品推荐

