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 配列関数を使用してそれを操作できます。これらの操作には、配列要素へのアクセス、追加、削除、検索が含まれます。
配列内の固有の要素にアクセスする場合は、添え字または 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 ループを使用して、配列内の非反復要素にアクセスします。
繰り返しのない配列に要素を追加する場合は、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() 関数を使用して、非繰り返しの末尾と先頭に要素を追加します。配列。
既存の要素を重複していない配列に追加する場合、追加操作は無効になり、重複した要素は配列に表示されないことに注意してください。
重複しない配列から要素を削除する場合は、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() 関数を使用する必要があります。
繰り返しのない配列内の要素を検索する必要がある場合は、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 サイトの他の関連記事を参照してください。