PHP で「array_unique」を使用して重複オブジェクトを削除するにはどうすればよいですか?

Linda Hamilton
リリース: 2024-11-01 04:13:02
オリジナル
690 人が閲覧しました

How Can I Use `array_unique` to Remove Duplicate Objects in PHP?

array_unique を使用した一意のオブジェクト

PHP では、array_unique 関数は配列から重複する値を削除するのに役立ちます。ただし、オブジェクトを含む配列を操作する場合、この機能が期待どおりに動作しないように見える場合があります。

解決策を入力してください:

オブジェクトの配列の場合は、array_unique を利用できます。 SORT_REGULAR 比較フラグを使用します。このフラグは、オブジェクト参照ではなくプロパティによってオブジェクトを比較するように関数に指示します。

実装:

Role オブジェクトの配列を検討します:

<code class="php">class Role {
    public $name;
}

$foo = new Role();
$foo->name = 'test1';

$bar = $foo;

$bam = new Role();
$bam->name = 'test2';

$test = array($foo, $bar, $bam);</code>
ログイン後にコピー

array_unique を使用して重複を削除するには:

<code class="php">print_r(array_unique($test, SORT_REGULAR));</code>
ログイン後にコピー

出力:

Array (
    [0] => Role Object
        (
            [name] => test1
        )

    [2] => Role Object
        (
            [name] => test2
        )
)
ログイン後にコピー

注意:

です。 SORT_REGULAR を使用した array_unique では、厳密な比較 ("===) ではなく、"== 比較が使用されることに注意することが重要です。これは、同じプロパティを持つがオブジェクト参照が異なるオブジェクトも引き続き重複とみなされます。

以上がPHP で「array_unique」を使用して重複オブジェクトを削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!