2

I have an $my_Array which is dynamic. What should i do to get $Final_array based on $my_Array.

    $my_Array = array(  
                ['arm'] => 'cc9f8eb4-e29f-44b4-8dcd-ac08e9b1faa6',
                ['min'] => 'cc9f8eb4-e29f-44b4-8dcd-ac08e9b1faa6',
                ['msk'] => 'cc9f8eb4-e29f-44b4-8dcd-ac08e9b1faa6',
                ['con'] => 'c72a7fb8-308a-482a-96d5-7a7853e16c49',
                ['ref'] => 'c72a7fb8-308a-482a-96d5-7a7853e16c49',
             ) 


   $Final_array = array
                (   'cc9f8eb4-e29f-44b4-8dcd-ac08e9b1faa6' => 'arm, min, msk',
                    'c72a7fb8-308a-482a-96d5-7a7853e16c49' => 'con, ref'
                )
1
  • why dont you write it yourself? It's not that hard. Come to learn and not to let other people write your code Commented Jul 18, 2013 at 10:02

3 Answers 3

3
$my_Array = array(  
                'arm' => 'cc9f8eb4-e29f-44b4-8dcd-ac08e9b1faa6',
                'min' => 'cc9f8eb4-e29f-44b4-8dcd-ac08e9b1faa6',
                'msk' => 'cc9f8eb4-e29f-44b4-8dcd-ac08e9b1faa6',
                'con' => 'c72a7fb8-308a-482a-96d5-7a7853e16c49',
                'ref' => 'c72a7fb8-308a-482a-96d5-7a7853e16c49',
             ) ;
$data = array();
foreach( $my_Array as $key => $value) {
    if(isset( $data[ $value ] )) {
        $data[ $value ] = $data[ $value ] .', '.$key;
    } else {
        $data[ $value ] = $key;
    }
}

Hope this above code is help you.

Sign up to request clarification or add additional context in comments.

Comments

1
$Final_array = array();               
foreach($my_Array as $key => $value){
 if(array_key_exists($value, $Final_array)){

  $Final_array[$value] = $Final_array[$value]. ", ".$key;

 }else{

  $Final_array[$value] = $key;

 }
}
print_r($Final_array);        
?>

Output:

Array
(
    [cc9f8eb4-e29f-44b4-8dcd-ac08e9b1faa6] => arm, min, msk
    [c72a7fb8-308a-482a-96d5-7a7853e16c49] => con, ref
)

Comments

0

I tried to do this with one loop and failed, but hope its ok with you.

$new = array();
foreach ($my_Array as $key => $val) {
   $new[$val][] = $key;
}

foreach ($new as $key => $val) {
   $new[$key] = implode(", ". $val);
}

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.