ホームページ >バックエンド開発 >PHPの問題 >PHPで配列内の異なる値を取得する方法

PHPで配列内の異なる値を取得する方法

PHPz
PHPzオリジナル
2023-04-18 15:20:47574ブラウズ

PHP では、複数の要素を含む配列がある場合、その中のさまざまな値をどのように取得すればよいでしょうか?この記事では、この目標を達成するためのいくつかの方法を紹介します。

1. array_unique 関数を使用する

array_unique 関数は、配列からすべての異なる値を取得できる、PHP の非常に便利な関数です。次の例で使用方法を理解できます:

$my_array = array('apple', 'banana', 'apple', 'pear', 'orange');
$unique_array = array_unique( $my_array);
print_r($unique_array);

出力: Array ( [0] => リンゴ [1] => バナナ [3] => 梨 [4] = > オレンジ )

2. array_count_values 関数を使用する

array_count_values 関数は、配列内の各要素が配列内に出現する回数を取得するのに役立ちます。結果の配列を解析することで、要素数のさまざまな値を簡単に取得できます。例:

$my_array = array('apple', 'banana', 'apple', 'pear', 'orange');
$count_array = array_count_values($my_array);
$ unique_count = count($count_array);
echo "「.$unique_count.」の異なる項目があります。";

出力: 4 つの異なる項目があります。

3. 使用します。 array_diff 関数

array_diff 関数を使用すると、2 つの配列を比較し、最初の配列には存在するが 2 番目の配列には存在しない値を返すことができます。この関数を使用して単一の配列をそれ自体と比較すると、異なる値が返されます。例:

$my_array = array('apple', 'banana', 'apple', 'pear', 'orange');
$unique_array = array_diff($my_array, array_unique($my_array ) );
print_r($unique_array);

出力: Array ([1] => pear)

4. foreach ループを使用する

次のこともできます。 foreach ループは配列を反復処理し、新しい配列を使用して各要素の一意の値を保持します。例:

$my_array = array('apple', 'banana', 'apple', 'pear', 'orange');
$unique_array = array();
foreach ( $ my_array as $key => $value) {

if (!in_array($value, $unique_array)) {
    $unique_array[] = $value;
}

}
print_r($unique_array);

出力: Array ( [0] => apple [1] = > ; バナナ [3] => 梨 [4] => オレンジ )

5. array_flip 関数と array_keys 関数の使用

array_flip 関数を使用して、キーと値を反転できます。配列のキーを取得し、array_keys 関数を使用して、置換された配列のキーを取得します。これにより、元の配列の一意の値が返されます。例:

$my_array = array('apple', 'banana', 'apple', 'pear', 'orange');
$flip_array = array_flip($my_array);
$ unique_array = array_keys($flip_array);
print_r($unique_array);

出力: Array ( [0] => リンゴ [1] => バナナ [2] => 梨 [ 3 ] => orange )

6. array_reduce 関数を使用します

最後に、array_reduce 関数を使用して配列を削減し、その一意の値を返すことができます。これには、要素が新しい配列に含まれているかどうかを確認するコールバック関数を作成する必要があります。そうでない場合は、配列に追加します。例:

$my_array = array('apple', 'banana', 'apple', 'pear', 'orange');
$unique_array = array_reduce($my_array, function ($result) , $value) {

if (!in_array($value, $result)) {
    $result[] = $value;
}
return $result;

}, array());
print_r($unique_array);

出力: Array ( [0] => apple [1] => ; バナナ [3] => 梨 [4] => オレンジ )

結論

上記は、PHP で配列内のさまざまな値を取得するいくつかの方法です。 array_unique は最も単純で最も一般的に使用されるメソッドですが、ニーズやアプリケーション シナリオに応じて他のメソッドも便利です。最適なソリューションを選択し、必要に応じて使用してください。

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

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