ホームページ  >  記事  >  バックエンド開発  >  PHP は配列のキーと値を交換するためにどの関数を使用しますか?

PHP は配列のキーと値を交換するためにどの関数を使用しますか?

青灯夜游
青灯夜游オリジナル
2022-08-23 19:41:152454ブラウズ

php は、「array_flip()」関数を使用して配列のキーと値を交換します。 array_flip() 関数は、配列内のキー名と、対応する関連キー値を交換するために使用されます。構文は、「array_flip(array);」です。パラメーターの配列は、キーと値のペアとして交換される配列を表します。交換が成功すると、交換された配列が返されます。交換が失敗した場合は、NULL を返します。

PHP は配列のキーと値を交換するためにどの関数を使用しますか?

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

php は配列の交換に使用されますキーと値の「array_flip()」関数。

array_flip() 関数は、配列内のキー名および対応する関連キー値を反転/交換するために使用されます。

array_flip(array);
パラメータ 説明
配列 必須。キーと値のペアを反転する必要がある配列を指定します。

戻り値: 反転が成功した場合は反転した配列が返され、反転が失敗した場合は NULL が返されます。

注: 配列の値は有効なキーでなければならない、つまり整数または文字列でなければならないことに注意する必要があります。値のタイプが間違っている場合は、警告がスローされ、関連付けられたキーと値のペアは結果に含まれません。


<?php
header(&#39;content-type:text/html;charset=utf-8&#39;); 
$arr=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
var_dump($arr);
$result=array_flip($arr);
var_dump($result);
?>

PHP は配列のキーと値を交換するためにどの関数を使用しますか?

説明: array_flip() 関数を使用して、配列から重複要素を削除します

PHP では、配列のキー名は一意であり、繰り返し存在することはありません。

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

<?php
$arr = array("a"=>"a1","b"=>&#39;b1&#39;,"c"=>"a2","d"=>"a1");
$arr1 = array_flip($arr);
var_dump($arr1);//先反转一次,去掉重复值,输出Array ( [a1] => d [b1] => b [a2] => c )
$arr2 = array_flip($arr1);
var_dump($arr2);//再反转回来,得到去重后的数组,输出Array ( [a] => a1 [b] => b1 [c] => a2 )
$arr3 = array_unique($arr);
var_dump($arr3);//利用php的array_unique函数去重,输出Array ( [a] => a1 [b] => b1 [c] => a2 )
?>

PHP は配列のキーと値を交換するためにどの関数を使用しますか?

2 つのメソッドの違いは、array_flip は繰り返される要素の最後のキーと値を取得し、array_unique は 2 つの繰り返される要素の最初のキーと値を取得することです。 。

拡張知識: 関数を使用せずに、foreach ステートメントと空の配列を使用して配列のキーと値を交換することもできます

<?php
$arr = array("a"=>"a1","b"=>&#39;b1&#39;,"c"=>"a2","d"=>"a1");
var_dump($arr);
$res=[];
foreach($arr as $k=>$v){
	$res[$v]=$k;
}
var_dump($res);
?>

PHP は配列のキーと値を交換するためにどの関数を使用しますか?

推奨学習: 「PHP ビデオ チュートリアル

以上がPHP は配列のキーと値を交換するためにどの関数を使用しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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