Heim > Artikel > Backend-Entwicklung > Wie man in PHP mit der Eindeutigkeit von Array-Werten umgeht
In der Webentwicklung sind Datenbanken und Arrays zwei häufig verwendete Methoden zur Datenspeicherung und -verarbeitung. Normalerweise verwenden Entwickler PHP und MySQL, um Daten aus der Datenbank zu lesen und sie zur Verarbeitung in einem Array zu speichern. Manchmal müssen wir jedoch sicherstellen, dass die Werte im Array nicht wiederholt werden, um den gewünschten Zweck zu erreichen. In diesem Artikel erfahren Sie, wie Sie mit der Eindeutigkeit von Array-Werten in PHP umgehen.
Einzigartigkeit von Arrays in PHP
In PHP verwenden wir häufig Arrays zum Verarbeiten und Speichern von Daten. Ein Array in PHP ist eine geordnete Sequenz, die eine Reihe von Schlüssel-Wert-Paaren enthält, d. h. jeder Wert entspricht einem zugehörigen Schlüssel. Wenn wir einen Deduplizierungsvorgang für ein Array durchführen müssen, müssen wir den Wert des Arrays beurteilen, um festzustellen, ob ein bestimmter Wert bereits im Array vorhanden ist.
In PHP können Sie die Funktion array_unique() verwenden, um doppelte Werte in einem Array zu entfernen. Diese Funktion kann jedoch nur Elemente mit demselben Wert entfernen, ohne sich um den Schlüsselnamen zu kümmern. Mit anderen Worten: Wenn Sie diese Funktion zum Verarbeiten eines Arrays verwenden, bleiben die Schlüsselnamen nicht erhalten, sondern nur die eindeutigen Schlüsselwerte.
Array-Deduplizierung
Wenn Sie möchten, dass eine bestimmte Zeichenfolge nicht im Array wiederholt wird, können Sie die Funktion array_unique() nicht verwenden. Sie müssen die Funktion in_array() in PHP verwenden. Diese Funktion kann feststellen, ob ein bestimmter Wert im Array vorhanden ist, und gibt TRUE zurück, wenn er vorhanden ist, andernfalls gibt sie FALSE zurück.
Das Folgende ist ein Beispiel, das zeigt, wie die Array-Deduplizierung implementiert wird:
$array = array('a', 'b', 'c', 'd', 'c', 'e'); $new_arr = array(); foreach ($array as $value) { if (!in_array($value, $new_arr)) { $new_arr[] = $value; } } print_r($new_arr);
Nachdem der obige Code ausgeführt wurde, ist der Wert von $new_arr array('a', 'b', 'c', 'd', 'e '), das heißt, die doppelten Werte im ursprünglichen Array wurden entfernt.
Eindeutigkeit von Werten ermitteln
Wenn Sie feststellen möchten, ob der Wert im Array eindeutig ist, müssen Sie die Funktion array_count_values() verwenden, die ein assoziatives Array zurückgibt, das die Anzahl der Vorkommen jedes Elements als Schlüssel enthält.
Das Folgende ist ein Beispiel, das zeigt, wie die Eindeutigkeit von Werten in einem Array bestimmt wird:
$array = array('a', 'b', 'c', 'd', 'c', 'e'); $count = array_count_values($array); foreach ($count as $value=>$key) { if ($key == 1) { echo "{$value} is unique!"; } else { echo "{$value} is not unique!"; } }
Nachdem der obige Code ausgeführt wurde, werden die folgenden Ergebnisse ausgegeben:
a is unique! b is unique! c is not unique! d is unique! e is unique!
Wie Sie sehen können, wird der obige Code durchlaufen Jedes Element im Array Einmal und geben Sie aus, ob das Element eindeutig ist. Wenn es eindeutig ist, geben Sie „ist eindeutig!“ aus, andernfalls geben Sie „ist nicht eindeutig!“ aus.
Eindeutigkeit von Array-Werten erreichen
In der tatsächlichen Projektentwicklung ist es häufig erforderlich, die Eindeutigkeit von Daten in der Datenbank sicherzustellen. In PHP werden Arrays normalerweise zur Verarbeitung von Daten in der Datenbank verwendet. Um die Eindeutigkeit jedes Werts in einem PHP-Array sicherzustellen, müssen Sie einen speziellen Array-Typ verwenden, das Set-Array.
Set-Array ist ein spezieller Array-Typ, jeder seiner Werte ist einzigartig. In PHP können Sie die SplObjectStorage-Klasse verwenden, um ein Set-Array zu implementieren. Diese Klasse erbt von der SplObjectStorage-Klasse und unterstützt das Speichern und Bearbeiten von Daten über Objekte, aber auch das Speichern gewöhnlicher Zeichenfolgen oder Zahlen.
Das Folgende ist ein Beispiel, das zeigt, wie die eindeutige Operation von Array-Werten implementiert wird:
$set = new SplObjectStorage(); $set->attach('a'); $set->attach('b'); $set->attach('c'); $set->attach('b'); $set->attach('d'); foreach ($set as $value) { echo $value . PHP_EOL; }
Nachdem der obige Code ausgeführt wurde, lautet das Ausgabeergebnis:
a b c d
Wie Sie sehen können, fügt der obige Code Elemente hinzu, indem er den Anhang aufruft ()-Methode der SplObjectStorage-Klasse wird der Deduplizierungsvorgang durch Durchlaufen des Set-Arrays implementiert.
Zusammenfassung
Arrays sind eine häufig verwendete Methode zur Datenspeicherung und -verarbeitung in der Entwicklung. Wenn Sie in PHP ein Array verwenden, müssen Sie sicherstellen, dass sein Wert eindeutig ist, um den Anforderungen des Projekts gerecht zu werden. In diesem Artikel wird erläutert, wie Sie mit der Eindeutigkeit von Array-Werten in PHP umgehen, einschließlich der Verwendung der Funktion in_array() zum Durchführen von Deduplizierungsvorgängen, der Verwendung der Funktion array_count_values() zum Bestimmen der Eindeutigkeit von Werten und der Verwendung der SplObjectStorage-Klasse zum Implementieren eines Sets Array, um die Eindeutigkeit der Werte sicherzustellen. Ich hoffe, dass dieser Artikel Ihnen dabei hilft, mit der Einzigartigkeit von Array-Werten in der PHP-Entwicklung umzugehen.
Das obige ist der detaillierte Inhalt vonWie man in PHP mit der Eindeutigkeit von Array-Werten umgeht. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!