2016-03-18 25 views
0

ich ein Array habenarray_intersect ein Array gegen ein mehrdimensionales Array

Array 
(
    [0] => Array 
      (
       [0] => 20 
       [1] => 36 
       [3] => 42 
      ) 
    [1] => Array 
      (
       [0] => 21 
       [1] => 42 
       [2] => 30 
      ) 
) 

Und ich habe eine zweite Anordnung von

Array 
(
    [0] => 24 
    [1] => 42 
    [2] => 26 
    [3] => 12 
) 

Ich möchte die Werte zu erhalten, verwenden array_intersect, die gleich von jeweils Array. Woran ich Probleme habe, ist herauszufinden, wie man den Code dafür richtig einstellt. Ich würde hoffen, dies zu haben

Array 
(
    [0] => Array 
      (
       [0] => 42 
      ) 
    [1] => Array 
      (
       [0] => 42 
      ) 
) 

Kann jemand mit der richtigen Syntax helfen oder eine alternative Option geben?

+0

Für was ist das zweite Array hier? – Rizier123

Antwort

1

Um Ihre Beispielausgabe anzupassen, können Sie einfach eine foreach Schleife verwenden. In Ihrem Beispiel ist das 2D-Array $ array1 und das 1D-Array ist $ array2.

$output = []; 

foreach ($array1 as $array) { 
    $output[] = array_intersect($array, $array2); 
} 

Beachten Sie, dass das Deklarieren eines Arrays mit [] nur in PHP-Versionen> = 5.4 unterstützt wird. Für PHP-Versionen < 5.4:

$array1 = array(array(20, 36, 42), array(21, 42, 30)); 
$array2 = array(24, 42, 26, 12); 

$output = array(); 

foreach ($array1 as $array) { 
    $output[] = array_intersect($array, $array2); 
} 
+0

Danke für die Antwort, aber das scheint nicht für mich zu funktionieren. –

+0

Können Sie Ihre Ausgabe oder Fehler teilen? Hier ist ein Beispiel aus dem obigen Code: https://eval.in/538917 Wenn Sie die Schlüssel nicht beibehalten möchten und eine Ausgabe benötigen, die exakt auf Ihre Frage oben abgestimmt ist, fügen Sie einfach in 'array_values' hinzu vor 'array_intersect': https://eval.in/538918 – ShaneOH

+0

Ich erhalte einen Syntaxfehler, unerwarteter '[', ich habe eine direkte Kopie und Einfügen gemacht und gerade meine Variablen geändert und kann nicht davon wegkommen Error. –

Verwandte Themen