Ich habe zwei Sätze von Ergebnissenfinden und fügen Sie in mehrdimensionales Array
ich die Werte in B die beiden und fügen Sie vergleichen wollen, die in ist ein (Hoffnung, die Sinn machen)
Aber ich möchte auf drei Kriterien (Obst, Farbe und Element) vergleichen
So sind die zwei gelben Linien auf T angehängt werden müssen B.
Die Lösung, an die ich denke, ist eine sich wiederholende for-Schleife in einer for-Schleife, aber dies könnte ein Problem sein, wenn Sie Tausende von zu vergleichenden Datensätzen erreichen.
Gibt es vielleicht einen einfacheren Weg. Die Sache, die mich stört, ist die Tatsache, dass Tabelle B eine zusätzliche Spalte hat.
Beispiel
For (x , records in table (A), x++)
$found = false;
For(i, records in table (B), i++)
if(tableA[x]['Fruit'] === tableB[i]['Fruit'])
if(tableA[x]['Colour'] === tableB[i]['Colour'])
if(tableA[x]['Element'] === tableB[i]['Element'])
$found = true;
End if
End if
End if
End for
if(!$found)
$f = tableA[x]['fruit'];
$c = tableA[x]['Colour'];
$e = tableA[x]['Element'];
tableB[]['Fruit'] = $f;
tableB[]['Colour'] = $c;
tableB[]['Element'] = $e;
tableB[]['Object'] = "";
End if
End for
Zeigen Sie Ihren * versuchten * Code, zuerst. –
Okay, Moment, ich werde in ein paar Minuten etwas veröffentlichen. Ich habe immer noch geplant, aber werde ein paar Pseudo ablehnen. – morne
Vielleicht hilft Ihnen diese Funktion: http://php.net/manual/en/function.array-udiff-assoc.php? –