ホームページ >バックエンド開発 >PHPの問題 >PHPで配列から同一の値を削除する方法

PHPで配列から同一の値を削除する方法

青灯夜游
青灯夜游オリジナル
2022-09-28 18:21:053732ブラウズ

3 つの方法: 1. array_unique、構文「array_unique(array)」を使用します; 2. array_flip()、構文「array_flip(array_flip(array))」を使用します; 3. foreach および 2 つの空の配列を使用します、構文 "foreach($arr as $k1=>$v1){$r1[$v1]=$k1;}foreach($r1 as $k2=>$v2){$r2[$v2]= $ k2;}"。

PHPで配列から同一の値を削除する方法

このチュートリアルの動作環境: Windows7 システム、PHP バージョン 8.1、DELL G3 コンピューター

同じ値を削除配列は、 内の配列の重複値を削除します。 PHP 配列から重複を削除するにはさまざまな方法がありますので、以下で紹介します。

方法 1: 重複排除関数 array_unique() を使用する

#array_unique() 関数は、配列内の重複した値を削除するために使用されます。 2 つ以上の配列値が同じ場合、最初の値のみが保持され、他の値は削除されます。

注: 保持される配列は、最初の配列項目のキー タイプを保持します。

array_unique(array,sortingtype)

パラメータ説明必須。配列を指定します。 #sortingtype# 戻り値: フィルター処理された配列を返します。
配列
オプション。並べ替えの種類を指定します。可能な値: SORT_STRING - デフォルト。各項目を文字列として扱います。
  • SORT_REGULAR - 各項目を規則的な順序で並べ替えます (標準 ASCII、タイプは変更されません)。
  • SORT_NUMERIC - 各項目を数値として扱います。
  • SORT_LOCALE_STRING - 現在のロケール (setlocale() で変更可能) に基づいて、各項目を文字列として扱います。
#例: 同じ値を削除する

<?php
$arr1 =array("a"=>"Cat",2,"b"=>"Dog","c"=>"Cat",2,3,4,3);
var_dump($arr1);
$arr2=array_unique($arr1);
var_dump($arr2);
?>

##方法 2: array_flip() 関数を使用するPHPで配列から同一の値を削除する方法

array_flip() 関数は、配列内のキー名および対応する関連キー値を反転/交換するために使用されます。 配列のキー名は一意であり、繰り返し存在することはありません。

この機能を使用すると、配列内の 2 つの値が同じ場合、配列を反転した後も最後のキーと値が保持され、間接的に配列の重複排除を実現できます。

<?php
$arr =array("a"=>"Cat",2,"b"=>"Dog","c"=>"Cat",2,3,4,3);
var_dump($arr);
$arr1 = array_flip($arr);//先反转一次,去掉重复值
var_dump($arr1);
$arr2 = array_flip($arr1);//再反转回来,得到去重后的数组
var_dump($arr2);
?>

方法 1 と方法 2 の違い:

PHPで配列から同一の値を削除する方法

array_flip() を使用して、繰り返し要素の場合は、array_unique を使用して、繰り返し要素の最初のキーと値を取得します。

方法 3: foreach ステートメントと 2 つの空の配列を使用する

または、キー名の一意の機能を使用し、foreach ステートメントと2 つの空の配列 配列のキー名とキー値の位置を 2 回反転する配列。

<?php 
header("content-type:text/html;charset=utf-8");
function f($arr){
	var_dump($arr);
	$res1=[];
	$res2=[];
	foreach($arr as $k1=>$v1){
		$res1[$v1]=$k1;
	}
	foreach ($res1 as $k2 => $v2){  
	    $res2[$v2]=$k2;
	}
	echo "去重后的数组:";
	var_dump($res2);
}

$arr=array(1,2,3,4,5,4,3,2,1,0);
f($arr);
?>

推奨学習: 「

PHP ビデオ チュートリアル

PHPで配列から同一の値を削除する方法

以上がPHPで配列から同一の値を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。