suchen
HeimBackend-EntwicklungPHP-ProblemSo fragen Sie ein Array in PHP nach doppelten Werten ab

Wenn wir in PHP einige Elemente in einer Liste speichern müssen, ist die Verwendung eines Arrays die natürlichste Idee. Arrays können problemlos eine große Anzahl von Elementen speichern und eine Reihe leistungsstarker Operationen unterstützen. Wenn unser Array jedoch doppelte Elemente enthält, müssen wir möglicherweise einige zusätzliche Operationen ausführen, um diese doppelten Werte zu finden. In diesem Artikel wird erläutert, wie Sie in PHP ein Array nach doppelten Werten abfragen.

1. Verwenden Sie die Funktion array_count_values ​​​​

Die Funktion array_count_values ​​​​von PHP kann das Vorkommen jedes Werts im Array zählen und ein neues Array zurückgeben, wobei der Schlüssel der Wert im ursprünglichen Array und der Wert das Vorkommen von ist der Wert in der ursprünglichen Array-Frequenz. Daher können wir diese Funktion verwenden, um doppelte Werte zu finden. Hier ist ein einfaches Beispiel:

$numbers = array(1, 2, 3, 2, 4, 1, 5, 2);
$counts = array_count_values($numbers);
$repeats = array();
foreach ($counts as $value => $count) {
    if ($count > 1) {
        $repeats[] = $value;
    }
}
print_r($repeats);

Ausgabe:

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

Im obigen Beispiel definieren wir zunächst ein Array $numbers, das doppelte Werte enthält. Anschließend haben wir die Funktion array_count_values ​​aufgerufen, um die Anzahl der Vorkommen jedes Werts zu zählen. Die Ausgabe ist ein Array mit zwei Schlüssel-Wert-Paaren, wobei der Schlüssel der Wert und der Wert die Häufigkeit angibt, mit der dieser Wert auftritt.

Wir verwenden dann eine foreach-Schleife, um das Array zu durchlaufen und zu prüfen, ob die Anzahl der Vorkommen jedes Werts größer als 1 ist. Wenn dies der Fall ist, wird der Wert zu einem anderen Array $repeats hinzugefügt. Schließlich drucken wir das Array $repeats mit der Funktion print_r auf dem Bildschirm aus, um die wiederholten Werte anzuzeigen.

2. Verwenden Sie die Funktion array_unique und die Zählfunktion.

Eine andere Möglichkeit, doppelte Werte in einem Array zu finden, ist die Verwendung der Funktion array_unique und der Zählfunktion. Die Funktion array_unique gibt ein dedupliziertes Array zurück, während die Zählfunktion zählt, wie oft jeder Wert im Array erscheint. Daher können wir diese beiden Funktionen verwenden, um doppelte Werte zu finden. Hier ist ein Beispiel:

$numbers = array(1, 2, 3, 2, 4, 1, 5, 2);
$unique = array_unique($numbers);
$counts = array_count_values($numbers);
$repeats = array();
foreach ($unique as $value) {
    if ($counts[$value] > 1) {
        $repeats[] = $value;
    }
}
print_r($repeats);

Die Ausgabe ist die gleiche wie im vorherigen Beispiel:

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

Im obigen Beispiel verwenden wir zunächst die Funktion array_unique, um doppelte Werte aus dem Array $numbers zu entfernen und ein neues Array zu erhalten, das dies tut enthalten keine doppelten Werte $unique. Anschließend verwenden wir die Funktion array_count_values, um die Anzahl der Vorkommen jedes Werts im ursprünglichen Array zu zählen.

Als nächstes verwenden wir eine foreach-Schleife, um das $unique-Array zu durchlaufen, und verwenden eine Zählfunktion, um zu prüfen, ob die Häufigkeit, mit der der Wert im ursprünglichen Array erscheint, größer als 1 ist. Wenn dies der Fall ist, wird der Wert zu einem neuen Array $repeats hinzugefügt und schließlich wird das Array $repeats auf dem Bildschirm ausgegeben, um die wiederholten Werte anzuzeigen.

3. Verwenden Sie die Funktion array_keys.

Eine andere Möglichkeit, doppelte Werte in einem Array zu finden, ist die Verwendung der Funktion array_keys. Diese Funktion gibt ein Array zurück, das alle Schlüssel mit dem angegebenen Wert enthält. Wenn wir diese Funktion verwenden, um doppelte Werte zu finden, ist die Länge des resultierenden Arrays daher die Anzahl der doppelten Werte. Hier ist ein Beispiel:

$numbers = array(1, 2, 3, 2, 4, 1, 5, 2);
$repeats = array();
foreach (array_unique($numbers) as $value) {
    $keys = array_keys($numbers, $value);
    if (count($keys) > 1) {
        $repeats[] = $value;
    }
}
print_r($repeats);

Die Ausgabe ist auch dieselbe:

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

Im obigen Beispiel verwenden wir zunächst die Funktion array_unique, um doppelte Werte aus dem Array $numbers zu entfernen und ein neues Array zu erhalten, das keine Duplikate enthält Werte. Anschließend verwenden wir eine foreach-Schleife, um das Array zu durchlaufen, und verwenden die Funktion array_keys, um alle Schlüssel im ursprünglichen Array zu finden, die diesen Wert enthalten. Wenn die Anzahl der gefundenen Schlüssel größer als 1 ist, wird der Wert einem neuen Array $repeats hinzugefügt. Schließlich drucken wir das Array $repeats auf dem Bildschirm aus, um die wiederholten Werte anzuzeigen.

Zusammenfassung

Die oben genannten sind drei Möglichkeiten, doppelte Werte in PHP-Arrays abzufragen. Die Leistung jeder Methode unterscheidet sich geringfügig, aber alle Methoden sind effektiv bei der Suche nach doppelten Werten. Durch das Erlernen dieser Methoden beherrschen Sie die Fähigkeiten der Array-Manipulation in PHP besser und können in Ihren Projekten einfacher mit wiederholten Elementen in Arrays umgehen.

Das obige ist der detaillierte Inhalt vonSo fragen Sie ein Array in PHP nach doppelten Werten ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.

SublimeText3 Englische Version

SublimeText3 Englische Version

Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

MantisBT

MantisBT

Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.