PHP数组操作去重 T.T

查看:118
本文介绍了PHP数组操作去重 T.T的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

大神们 我的数组长这个样子
array(2) {
[14] => array(6) {

["job_name"] => string(44) "苹果,香蕉,苹果"

}
[3] => array(6) {

["job_name"] => string(44) "梨子,梨子,西红柿"

}
}

我想让它变成

array(2) {
[14] => array(6) {

["job_name"] => string(44) "苹果2,香蕉1"

}
[3] => array(6) {

["job_name"] => string(44) "梨子2,西红柿1"

}
}

这个酱紫 会不会很难T.T 有朋友会么Q.Q

解决方案

array_walk($arr, function(&$item) {
    $item['job_name'] = join(',', array_unique(explode(',', $item['job_name'])));
});


没看清楚题目, 下面是修改后的答案

array_walk($arr, function(&$item) {
    $after = array_values(array_unique(explode(',', $item['job_name'])));
    foreach ($after as $key=>$value) {
        preg_match_all("/$value/", $item['job_name'], $matches);
        $after[$key] = $value . count($matches[0]);
    }
    $item['job_name'] = join(',', $after);
});

这篇关于PHP数组操作去重 T.T的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆