1

ユーザー入力に基づいて増加できるmultidimensioanl配列があります。配列内でarray_intersectを実行して、キー間の共通値を取得したいと思います。

例のように

Array ( [php] => Array ( [0] => 36 [1] => 51 [2] => 116 [3] => 171 [4] => 215 [5] => 219 [6] => 229 [7] => 247 [8] => 316 ) [java] => Array ( [0] => 14 [1] => 16 [2] => 19 [3] => 24 [4] => 25 [5] => 26 [6] => 29 [7] => 31 [8] => 33 [9] => 34 [10] => 35 [11] => 36 [12] => 37 [13] => 40 [14] => 45 [15] => 49 [16] => 51 ) ) 

期待される出力は(36,51)のようになります

そしてこれは私がそれを得ることができるということです

これを介して、

$intersected_array = call_user_func_array('array_intersect', $array);

しかし、私の配列に3つ目のキーがあり、3つすべてに共通の値がない場合

お気に入り

Array ( [php] => Array ( [0] => 36 [1] => 51 [2] => 116 [3] => 171 [4] => 215 [5] => 219 [6] => 229 [7] => 247 [8] => 316 ) [java] => Array ( [0] => 14 [1] => 16 [2] => 19 [3] => 24 [4] => 25 [5] => 26 [6] => 29 [7] => 31 [8] => 33 [9] => 34 [10] => 35 [11] => 36 [12] => 37 [13] => 40 [14] => 45 [15] => 49 [16] => 51 ) [ajax] => Array ( [0] => 91 [1] => 110 [2] => 113 [3] => 172 ) ) 

次に、キーの最大値の結果として出力がスローされます。この場合、javakeyのすべての値が返されます。

しかし、私の期待される出力は0です。助けてください。

4

1 に答える 1

1

私はあなたの例をコピーしました、そして私にとってそれはうまくいきます:

<?php

$array = array(
    'php' => array(
        36,
        51,
        116,
        171,
        215,
        219,
        229,
        247,
        316,
    ),
    'java' => array(
        14,
        16,
        19,
        24,
        25,
        26,
        29,
        31,
        33,
        34,
        35,
        36,
        37,
        40,
        45,
        49,
        51,
    ),
    'ajax' => array(
        91,
        110,
        113,
        172,
    ),
);

$intersected_array = call_user_func_array('array_intersect',$array);

print_r($intersected_array);

// RESULT: "Array ( ) "

このコードを正確にコピーして、出力を教えてください。

于 2013-01-12T07:52:50.003 に答える