[ create a new paste ] login | about

Link: http://codepad.org/8jQoDBCT    [ raw code | output | fork ]

PHP, pasted on Jan 20:
<?php

$arr1 = array( array(
                    'letter' => 'A',
                    'number' => '1'
                ),

               array(
                    'letter' => 'B',
                    'number' => '2'
                ),

               array(
                    'letter' => 'C',
                    'number' => '3'
                )

    );

$arr2 = array( array(
                    'letter' => 'A',
                    'number' => '1'
                ),

               array(
                    'letter' => 'B',
                    'number' => '2'
                )

    );



 $arr3 = array( array(
                    'letter' => 'D',
                    'number' => '4'
                ),

               array(
                    'letter' => 'E',
                    'number' => '5'
                )

    );

    function find_unique_entries () {
      $found = $repeated = array();
      $args = func_get_args();
      $key = array_shift($args);
      foreach ($args as $arg) {
        if (!is_array($arg)) return FALSE; // all arguments muct be arrays
        foreach ($arg as $inner) {
          if (!isset($inner[$key])) continue; 
          if (!in_array($inner[$key], $found)) {
            $found[] = $inner[$key];
          } else {
            $repeated[] = $inner[$key];
          }
        }
      }
      return array_diff($found, $repeated);
    }

    var_dump(find_unique_entries('letter', $arr1, $arr2, $arr3));


Output:
1
2
3
4
5
6
7
8
array(3) {
  [2]=>
  string(1) "C"
  [3]=>
  string(1) "D"
  [4]=>
  string(1) "E"
}


Create a new paste based on this one


Comments: