Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für die Implementierung einer zweidimensionalen Array-Deduplizierungsfunktion in PHP

Beispiel für die Implementierung einer zweidimensionalen Array-Deduplizierungsfunktion in PHP

高洛峰
高洛峰Original
2017-01-14 15:07:231481Durchsuche

Das Beispiel in diesem Artikel beschreibt die Implementierung der zweidimensionalen Array-Deduplizierungsfunktion in PHP. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:

Deduplizierungsvorgang eines zweidimensionalen Arrays in PHP. Beispielsweise wird für die aus der Datenbank abgefragten Datensätze der Deduplizierungsvorgang basierend auf einem bestimmten Schlüssel durchgeführt

Der Code lautet wie folgt:

/**
 * 删除二维数组中相同项的数据,(一般用于数据库查询结果中相同记录的去重操作)
 *
 * @param array $_2d_array 二维数组,类似:
 *     $tmpArr = array(
 *         array('id' => 1, 'value' => '15046f5de5bb708e'),
 *         array('id' => 1, 'value' => '15046f5de5bb708e'),
 *     );
 * @param string $unique_key 表示上述数组的 "id" 键,或者 "value" 键
 *
 * @return mixed
 */
function unique_2d_array_by_key($_2d_array, $unique_key) {
  $tmp_key[] = array();
  foreach ($_2d_array as $key => &$item) {
    if ( is_array($item) && isset($item[$unique_key]) ) {
      if ( in_array($item[$unique_key], $tmp_key) ) {
        unset($_2d_array[$key]);
      } else {
        $tmp_key[] = $item[$unique_key];
      }
    }
  }
  return $_2d_array;
}
//使用示例:
$tmpArr = array(
  array('id' => 1, 'value' => '15046f5de5bb708e'),
  array('id' => 1, 'value' => '15046f5de5bb708e'),
);
print_r(@unique_2d_array_by_key($tmpArr,id));

Das laufende Ergebnis:

Array ( [0] => Array ( [id] => 1 [value] => 15046f5de5bb708e ) )

Prinzip: Speichern Sie die Schlüssel im zweidimensionalen Array, die dedupliziert werden müssen, durchlaufen und vergleichen Sie den nächsten Datensatz und löschen Sie ihn, wenn die Schlüsselwerte gleich sind.

Ich hoffe, dass dieser Artikel für alle hilfreich ist, die sich mit PHP-Programmierung befassen.

Weitere Artikel zu Beispielen für die PHP-Implementierung der Deduplizierungsfunktion für zweidimensionale Arrays finden Sie auf der chinesischen PHP-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