Heim  >  Artikel  >  Backend-Entwicklung  >  PHP entfernt doppelte Datenbanken aus dem Array

PHP entfernt doppelte Datenbanken aus dem Array

PHPz
PHPzOriginal
2023-05-24 14:15:10462Durchsuche

PHP ist eine beliebte serverseitige Programmiersprache, die häufig für die Entwicklung von Webanwendungen verwendet wird. In der PHP-Entwicklung gehört der Betrieb von Datenbanken zu den sehr häufigen Anforderungen. Wenn wir Daten aus der Datenbank abrufen, kommt es häufig zu Datenduplizierungen. Wenn wir diese doppelten Daten deduplizieren müssen, können wir dazu die Array-Deduplizierungsmethode von PHP verwenden. In diesem Artikel wird erläutert, wie Sie mit PHP doppelte Daten aus Arrays entfernen und diese Vorgänge auf die Datenbank anwenden.

1. PHP-Array-Deduplizierung

1. Verwenden Sie die Funktion array_unique().

PHP stellt die Funktion array_unique() zur Verfügung, um eine Array-Deduplizierung zu erreichen. Diese Funktion gibt ein dedupliziertes Array zurück, ohne das ursprüngliche Eingabearray zu ändern. Anwendungsbeispiele sind wie folgt:

$array = array('a', 'b', 'c', 'd', 'a', 'b');
$result = array_unique($array);
print_r($result);

Ausgabe:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)

2. Verwenden Sie die Funktionen array_flip() und array_keys()

Eine andere Möglichkeit besteht darin, die Funktion array_flip() zu verwenden, um die Schlüssel und Werte des Arrays auszutauschen, und dann Verwenden Sie die Funktion array_keys(). Rufen Sie das Schlüsselnamen-Array ab. Da die Schlüsselnamen eindeutig sind, kann mit dieser Methode auch eine Array-Deduplizierung erreicht werden. Anwendungsbeispiele sind wie folgt:

$array = array('a', 'b', 'c', 'd', 'a', 'b');
$result = array_keys(array_flip($array));
print_r($result);

Ausgabe:

Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
)

Die Implementierungsprinzipien der beiden Methoden unterscheiden sich geringfügig, aber beide können eine Array-Deduplizierung erreichen. Bei Arrays mit kleinen Datengrößen treten bei beiden Methoden keine Leistungsprobleme auf. Wenn Sie jedoch ein Array mit einer großen Datenmenge deduplizieren müssen, bietet die zweite Methode eine bessere Leistung.

2. PHP-Array-Deduplizierung wird auf die Datenbank angewendet

Angenommen, es gibt eine Schülertabelle mit doppelten Datensätzen. Verwenden Sie die PHP-Deduplizierungsfunktion, um diese zu deduplizieren und in einer neuen Schülertabelle zu speichern. Das Codebeispiel lautet wie folgt:

<?php
  //连接数据库
  $servername = "localhost";
  $username = "username";
  $password = "password";
  $dbname = "myDB";

  $conn = new mysqli($servername, $username, $password, $dbname);

  //检测连接
  if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
  }

  //从students表中获取数据
  $sql = "SELECT * FROM students";
  $result = $conn->query($sql);

  //将数据存入一个数组
  $array = array();
  if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
      $array[] = $row;
    }
  }

  //使用array_unique()函数进行数组去重
  $unique = array_unique($array, SORT_REGULAR);

  //清空旧表
  $sql = "TRUNCATE TABLE students";
  $conn->query($sql);

  //将去重后的数据插入新表
  foreach($unique as $row) {
    $sql = "INSERT INTO students (name,age,grade) VALUES ('" . $row['name'] . "'," . $row['age'] . "," . $row['grade'] . ")";
    $conn->query($sql);
  }

  //关闭数据库连接
  $conn->close();
?>

Im Code stellen wir zunächst eine Verbindung zur Datenbank her und rufen die Daten aus der Schülertabelle ab, dann speichern wir die Daten in einem Array, verwenden die Funktion array_unique(), um das Array zu deduplizieren, und schließlich Speichern Sie die deduplizierten Daten und fügen Sie sie in eine neue Tabelle ein.

3. Fazit

In diesem Artikel wird die Methode zur Verwendung eines PHP-Arrays zum Entfernen von Duplikaten vorgestellt, einschließlich der Verwendung der Funktionen array_unique() und array_flip(). Diese Methoden sind wirksame Mittel zur Array-Deduplizierung. Darüber hinaus haben wir diese Methoden auch auf die Datenbank angewendet, um den Vorgang des Entfernens doppelter Datensätze aus der Tabelle doppelter Datensätze und deren Speicherung in einer neuen Tabelle abzuschließen. Dies ist eine sehr häufige praktische Anforderung in der PHP-Entwicklung und kann in der tatsächlichen Entwicklung flexibel eingesetzt werden.

Das obige ist der detaillierte Inhalt vonPHP entfernt doppelte Datenbanken aus dem Array. 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
Vorheriger Artikel:php zu entkommenNächster Artikel:php zu entkommen