Heim >Backend-Entwicklung >PHP-Problem >So überprüfen Sie die Ergebnisse nach der Deduplizierung des PHP -Arrays
Das Ergebnis des PHP -Array -Deduplizierens besteht darin, zu bestätigen, dass alle doppelten Elemente entfernt wurden, während die Reihenfolge der eindeutigen Elemente aufbewahrt wird. Es gibt keine einzige endgültige "korrekte" Antwort, da der beste Ansatz von der Komplexität Ihres Arrays und Ihrer Deduplizierungsmethode abhängt. Es können jedoch verschiedene Techniken eingesetzt werden, um ein hohes Maß an Vertrauen zu erreichen.
Der einfachste Ansatz ist eine visuelle Inspektion, insbesondere für kleine Arrays. Dies wird jedoch für größere Datensätze unpraktisch. Robustere Methoden beinhalten programmatische Überprüfungen. Eine solche Methode besteht darin, das Array vor und nach Deduplizierung zu vergleichen. Wenn das Array nach der Abschnitt weniger Elemente als das Original enthält und keines der Elemente im Array nach der Abschnitt mehr als einmal erscheint, war die Deduplizierung wahrscheinlich erfolgreich. Wir können die integrierten Funktionen von PHP verwenden, um dabei zu helfen:
<code class="php"><?php $originalArray = [1, 2, 2, 3, 4, 4, 5, 5, 5]; $deduplicatedArray = array_unique($originalArray); // Verify using count() if (count($originalArray) > count($deduplicatedArray)) { echo "Deduplication likely successful (fewer elements).\n"; } else { echo "Deduplication failed (same number of elements).\n"; } //Verify using array_count_values() $counts = array_count_values($deduplicatedArray); $hasDuplicates = false; foreach($counts as $count){ if($count > 1){ $hasDuplicates = true; break; } } if($hasDuplicates){ echo "Deduplication failed (duplicates found).\n"; } else { echo "Deduplication likely successful (no duplicates).\n"; } //Preserve keys while deduplicating $originalArray = ['a' => 1, 'b' => 2, 'c' => 2, 'd' => 3]; $deduplicatedArray = array_unique($originalArray, SORT_REGULAR); //SORT_REGULAR preserves keys ?></code>
Dieser Code-Snippet überprüft zuerst, ob die Anzahl der Elemente abgenommen hat. Dann verwendet es array_count_values()
, um die Vorkommen jedes Elements im deduplizierten Array zu zählen. Wenn ein Element mehr als einmal erscheint, zeigt es einen Fehler im Deduplizierungsprozess an. Beachten Sie die Verwendung von SORT_REGULAR
mit array_unique
, um die Schlüsselvereinigung beizubehalten, wenn dies wichtig ist. Denken Sie daran, dass array_unique
das erste Ereignis jedes Elements bewahrt. Obwohl
array_count_values()
gleich der Anzahl des Array
ist, wurden keine Duplikate entfernt, was auf ein Problem mit dem Deduplikationsvorgang hinweist. Dies ist eine schnellere Erstprüfung, die jedoch nicht definitiv das Fehlen von Duplikaten beweist. Es wird nur potenzielle Probleme hervorgehoben. Bei Duplikaten, Arrays ohne Duplikate und Arrays, die komplexe Datentypen enthalten. Verwenden Sie Assertion -Bibliotheken wie Phpunit, um die Richtigkeit der Ausgabe Ihrer Funktion zu überprüfen. Datensätze. array_unique()
count()
Vergleich mit bekannten guten Ergebnissen: Für eine Teilmenge Ihrer Testdaten deduplizieren Sie das Array manuell und vergleichen Sie das Ergebnis mit der Ausgabe Ihrer Funktion. Dies dient als Grundwahrheit zur Überprüfung. Denken Sie daran, dass gründliche Tests von entscheidender Bedeutung sind, insbesondere im Umgang mit der Datenintegrität. array_unique()
Das obige ist der detaillierte Inhalt vonSo überprüfen Sie die Ergebnisse nach der Deduplizierung des PHP -Arrays. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!