2015-06-15 10 views
6

Kennt jemand eine Array-diff-Implementierung in PHP? Ich muss dies verwenden, um ein Feature zu entwickeln, das der Art und Weise ähnlich ist, wie stackexchange diffs Tags.Array diff Implementierung in PHP

+1

Fragen Sie uns bitten, ** zu empfehlen oder ein Buch, Werkzeug, Software-Bibliothek, Tutorial oder andere Off-Site-Ressource sind Wegthema ** für Stack-Überlauf zu finden, da sie opinionated Antworten und Spam zu gewinnen neigen . Beschreiben Sie stattdessen das Problem und was bisher unternommen wurde, um es zu lösen. – Makyen

+0

Für Array-Funktionen können Sie diesen Link beziehen: http://www.w3schools.com/php/php_ref_array.asp – Ramki

Antwort

1

Wie die Dokumentation sagt:

Vergleicht array1 gegen einen oder mehrere andere Arrays und gibt die Werte in array1, die in einem der anderen Arrays nicht vorhanden sind.

Zum Beispiel:

$array1 = array("a" => "green", "red", "blue", "red"); 
$array2 = array("b" => "green", "yellow", "red"); 
$result = array_diff($array1, $array2); 

Würde sich mit $result enthält Ende nur den Wert blue, weil es nur in einer der Anordnungen ist.

komplette Dokumentation hier: http://php.net/manual/en/function.array-diff.php

0

Es gibt array_diff, welche die Werte von 2 Arrays vergleichen und ein Array mit Werten der Differenzen zurück.

$arrayone = array("bacon" => "tasty", "lettuce", "carrot"); 
$arraytwo = array("ham" => "tasty", "carrot"); 

$differences = array_diff($arrayone, $arraytwo); 
var_dump($differences); 
$differences = array_diff($arraytwo, $arrayone); 
var_dump($differences); 

Dies gibt:

array (size=1) 
    0 => string 'lettuce' (length=7) 

array (size=0) 
    empty 

Eine wichtige Sache ist es geht nur einen Weg, das erste Array an die anderen weitergegeben diejenigen verglichen wird.

http://php.net/manual/en/function.array-diff.php