PHPの一意の配列

WBOY
WBOYオリジナル
2023-05-19 16:15:08584ブラウズ

PHP で独自の配列を操作する方法

Web アプリケーションの開発プロセスにおいて、配列は PHP で最も一般的に使用されるデータ構造の 1 つです。配列は PHP で広く使用されており、文字列や数値からオブジェクトや配列自体に至るまで、あらゆる種類のデータを格納できます。ただし、場合によっては、たとえば、一意の配列を操作する必要があるなど、特定の配列を操作する必要があります。この記事では、PHP で独自の配列を作成および操作する方法を説明します。

非繰り返し配列とは

非繰り返し配列とは、配列内に重複する値を持たない配列を指します。つまり、この配列内のすべての要素は一意です。一意の重複しない値を格納するデータ構造が必要な場合は、重複しない配列を使用できます。

PHP で独自の配列を作成する

PHP では独自の配列を作成する方法がいくつか用意されていますが、ここでは主に 2 つの方法を紹介します。

最初の方法は、PHP の array_unique() 関数を使用することです。この関数の機能は、配列から重複する値を削除し、重複しない配列を返すことです。

サンプル コードは次のとおりです。

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

上記のサンプル コードでは、重複した値を含む配列 $array を作成し、array_unique() 関数を使用して重複を削除し、結果は $unique_array の真ん中にあります。現在、$unique_array には一意の値 'a'、'b'、'c'、'd' のみが含まれています。

array_unique() 関数は 1 次元配列内の重複値のみを削除できることに注意してください。多次元配列内の重複値を削除したい場合は、次の関数を呼び出す必要があります。この関数は再帰的に実行されます。

2 番目の方法は、PHP の array_flip() 関数と array_keys() 関数を使用することです。このメソッドのアイデアは、array_flip() 関数を使用して配列のキーと値を交換し、重複する値を自動的に削除し、array_keys() 関数を使用して元のキー値を復元することです。サンプル コードは次のとおりです。

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

上記のサンプル コードでは、重複する値の配列 $array を作成し、array_flip() 関数を使用してキーと値を交換します。 array を使用して「重複」配列を生成します。次に、array_keys() 関数を使用して、並べ替えられたキー値を取得し、一意の値を含む配列を生成します。

一意の配列での操作

一意の配列を作成したら、さまざまな PHP 配列関数を使用してそれを操作できます。これらの操作には、配列要素へのアクセス、追加、削除、検索が含まれます。

  1. 配列要素へのアクセス

配列内の固有の要素にアクセスする場合は、添え字または foreach ループを使用できます。

サンプル コードは次のとおりです。

$unique_array = array('a', 'b', 'c', 'd');
echo $unique_array[0]; // 输出 a
foreach($unique_array as $value){
    echo $value . ' ';
}
// 输出 a b c d

上記のサンプル コードでは、添字と foreach ループを使用して、配列内の非反復要素にアクセスします。

  1. 配列に要素を追加する

繰り返しのない配列に要素を追加する場合は、PHP の array_push() または array_unshift() 関数を使用できます。 。

サンプル コードは次のとおりです。

$unique_array = array('a', 'b', 'c', 'd');
array_push($unique_array, 'e');
array_unshift($unique_array, '0');
print_r($unique_array);
// 输出 Array ( [0] => 0 [1] => a [2] => b [3] => c [4] => d [5] => e )

上記のサンプル コードでは、array_push() 関数と array_unshift() 関数を使用して、非繰り返しの末尾と先頭に要素を追加します。配列。

既存の要素を重複していない配列に追加する場合、追加操作は無効になり、重複した要素は配列に表示されないことに注意してください。

  1. 配列から要素を削除する

重複しない配列から要素を削除する場合は、unset() 関数、array_splice() 関数、またはPHP()関数のarray_filter。

サンプル コードは次のとおりです。

$unique_array = array('a', 'b', 'c', 'd');
unset($unique_array[1]);
print_r($unique_array);
// 输出 Array ( [0] => a [2] => c [3] => d )

$unique_array = array('a', 'b', 'c', 'd');
array_splice($unique_array, 1, 2);
print_r($unique_array);
// 输出 Array ( [0] => a [3] => d )

$unique_array = array('a', 'b', 'c', 'd');
$unique_array = array_filter($unique_array, function($value) {
    return $value != 'a';
});
print_r($unique_array);
// 输出 Array ( [1] => b [2] => c [3] => d )

上記のサンプル コードでは、unset() 関数、array_splice() 関数、array_filter() 関数を使用して、非それぞれ配列を重複させます。

unset() 関数を使用して配列内の要素を削除すると、要素の位置はまだ存在しますが、位置の値は NULL になることに注意してください。配列から位置を完全に削除したい場合は、array_splice() 関数を使用する必要があります。

  1. 配列内の要素の検索

繰り返しのない配列内の要素を検索する必要がある場合は、PHP の array_search() 関数を使用できます。

サンプル コードは次のとおりです。

$unique_array = array('a', 'b', 'c', 'd');
$key = array_search('c', $unique_array);
echo $key; // 输出 2

上記のサンプル コードでは、array_search() 関数を使用して、配列内の重複していない要素 'c' を検索し、返します。配列内の要素の添え字。

結論

この記事では、PHP で非重複配列を作成および操作する方法を紹介しました。一意の配列を作成するには、array_unique() 関数または array_flip() および array_keys() 関数を使用できます。一意の配列を操作するには、PHP の一般的な配列関数を使用できます。一意の値を処理する必要があることが多い状況では、重複しない配列を使用すると、プログラムの実行効率を効果的に向上させることができます。

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

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