php - matching elements in an array
I've been playing with this all day and haven't figured out a good way to do it...
I have two arrays and am trying to create an array based on matching values.
//$original
    Array
    (
        [0] => Array
            (
                [items] => Array
                    (
                        [0] => Array
                            (
                                [0] => PA
                                [1] => DZ
                                [2] => ER
                                [3] => TY
                            )
          开发者_运维知识库              [1] => Array
                            (
                                [0] => KV
                                [1] => EN
                                [2] => CR
                            )
                        [2] => Array
                            (
                                [0] => HU
                                [1] => GO
                                [2] => GA
                                [3] => FI
                            )
                    )
            )
    )
//$compare    
    Array
    (
        [0] => Array
            (
                [items] => Array
                    (
                        [0] => Array
                            (
                                [0] => PA
                                [1] => AN
                                [2] => ER
                            )
                        [1] => Array
                            (
                                [0] => KV
                            )
                        [2] => Array
                            (
                                [0] => HU
                                [1] => XV
                                [2] => ZL
                                [3] => FI
                            )
                    )
            )
    )
And I'm trying to produce
//$similar
    Array
    (
        [0] => Array
            (
                [items] => Array
                    (
                        [0] => Array
                            (
                                [0] => PA
                                [2] => ER
                            )
                        [1] => Array
                            (
                                [0] => KV
                            )
                        [2] => Array
                            (
                                [0] => HU
                                [3] => FI
                            )
                    )
            )
    )
Use array_intersect.
$similar = $compare;
$similar[0]['items'] = array_intersect($compare[0]['items'], $original[0]['items']);
codepad example
 
         加载中,请稍侯......
 加载中,请稍侯......
      
精彩评论