首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Php合并相同的名称值

Php合并相同的名称值
EN

Stack Overflow用户
提问于 2019-03-04 11:18:50
回答 4查看 132关注 0票数 0

我把这个作为输出

代码语言:javascript
复制
Department  Employee Name   Employee Code   
Sales   Ganeshmurthy    264 
Sales   AZIM ahmed KHAN 2012    
Sales   DHANABAL    231 04-03-2019  
Service RAVIKIRAN   2003    04-03
Manufacturing   RAJAVARMAN  2073    04-03-2019  09:20   1h 10m
Manufacturing   MEGALA  332 04-03-2019  08:14   0h 4m
Manufacturing   SABARI  333 04-03-2019  08:13   0h 3m
Manufacturing   Sasi    1001    04-03-2019  08:16   0h 6m
Manufacturing   FRANCIES XAVIER 136 04-03-2019  08:13   0h 3m
Manufacturing   MANIKANDAN.V    151 04-03-2019  08:15   0h 5m

我得到这个td格式,我需要合并的副本为一个?我有一个由多个部门组成的数组,我需要将相同的部门名称合并到一个数组中。例如,如果有department1department1department1重复n次。我需要将它合并到一个数组中,作为department1。我怎样才能做到这一点?我需要在表- td中显示它,这样各部门就不会重复了。

代码语言:javascript
复制
[0] => Array
        (
            [department_id] => 15
            [department_name] => R&D
            [name] => SUBRAMANIAN
            [code] => 101
            [clockin] => 
            [late] => 
            [date] => 1970-01-01
        )

    [1] => Array
        (
            [department_id] => 3
            [department_name] => Manufacturing
            [name] => RAVI
            [code] => 103
            [clockin] => 
            [late] => 
            [date] => 1970-01-01
        )

    [2] => Array
        (
            [department_id] => 3
            [department_name] => Manufacturing
            [name] => AMULRAJAN.A
            [code] => 104
            [clockin] => 
            [late] => 
            [date] => 1970-01-01
        )

    [3] => Array
        (
            [department_id] => 3
            [department_name] => Manufacturing
            [name] => KANAKARAJ.R
            [code] => 105
            [clockin] => 
            [late] => 
            [date] => 1970-01-01
        )

    [4] => Array
        (
            [department_id] => 3
            [department_name] => Manufacturing
            [name] => ELAYARAJA
            [code] => 106
            [clockin] => 
            [late] => 
            [date] => 1970-01-01
        )

预期结果如下所示

代码语言:javascript
复制
[1] => Array
    (

        [department_name] => Manufacturing

    )

[2] => Array
    (

        [department_name] => R & D

    )

以下是我曾经尝试过的:

代码语言:javascript
复制
foreach($attendance as $dr){
           $alldep = $dr->department_name;
       echo $alldep;
}

请注意,我以数组格式获取所有数据,而不是作为对象

EN

回答 4

Stack Overflow用户

发布于 2019-03-04 11:30:52

你应该像这样试试

代码语言:javascript
复制
$uniqArr= array();
foreach ($attendance as $dr) {
    $uniqArr[] = $dr->department_name;;
}
$uniqueRes = array_unique($uniqArr);
票数 1
EN

Stack Overflow用户

发布于 2019-03-04 11:33:45

接受一个新的数组$departments

在给定数组上循环。

department附加到$departments

使用department作为密钥。

因为PHP数组总是有唯一的键,所以您只会得到唯一的部门。

工作代码:

代码语言:javascript
复制
<?php
$arr = [
[
'department_id' => 15 ,'department_name' => 'R&D' ,'name' => 'SUBRAMANIAN' ,'code' => 101
 ,'clockin' => '' ,'late' => '' ,'date' => '1970-01-01'
],
[
 'department_id' => 3 ,'department_name' => 'Manufacturing' ,'name' => 'RAVI' ,'code' => 103
 ,'clockin' => '' ,'late' => '' ,'date' => '1970-01-01'
],
[
 'department_id' => 3 ,'department_name' => 'Manufacturing' ,'name' => 'AMULRAJAN.A' ,'code' => 104 
 ,'clockin' => '' ,'late' =>'' ,'date' => '1970-01-01'
],
[
 'department_id' => 3 ,'department_name' => 'Manufacturing' ,'name' => 'KANAKARAJ.R' ,'code' => 105
 ,'clockin' => '' ,'late' => '' ,'date' => '1970-01-01'
],
[
 'department_id' => 3 ,'department_name' => 'Manufacturing' ,'name' => 'ELAYARAJA' ,'code' => 106
 ,'clockin' => '' ,'late' => ''
]];

$departments = '';
if (! empty($arr)) {
    foreach ($arr as $elem) {
 $departments[$elem['department_name']] = $elem['department_name'];
    }
}
echo '<pre>';print_r($departments);echo '</pre>';

输出:

代码语言:javascript
复制
Array
(
    [R&D] => R&D
    [Manufacturing] => Manufacturing
)
票数 0
EN

Stack Overflow用户

发布于 2019-03-04 11:51:14

为所需的输出尝试以下代码

代码语言:javascript
复制
$arr = array_unique(array_column($attendance, 'department_name'));
foreach($arr AS $a)
{
    $newarr[]['department_name'] = $a;
}
echo "<pre>"; print_r($newarr);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54982163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档