検索
ホームページバックエンド開発PHPの問題PHP配列内の同じキー値を持つ要素を削除する方法

PHP は、配列を操作するためのさまざまな配列関数を提供する強力なプログラミング言語です。 PHP は、配列から同じキー値を持つ要素を削除する必要がある場合に、多くのソリューションを提供します。この記事では、同じキー値を持つ要素を削除する一般的な方法をいくつか紹介します。

方法 1: array_unique() 関数を使用する

array_unique() 関数は、配列から重複する値を削除し、すべてのキー名が残っている新しい配列を返すことができます。絶え間ない。以下は、array_unique() 関数を使用して要素を削除するサンプル コードです。

$old_array = array("one" => 1, "two" => 2, "three" => 3, "four" => 2);
$new_array = array_unique($old_array);
print_r($new_array);

上記のコードでは、元の配列には 4 つの要素が含まれており、そのうち 2 つは同じキー値を持っています。 array_unique() 関数は、配列から重複した要素を削除し、新しい配列を返します。出力結果は次のとおりです。

Array
(
    [one] => 1
    [two] => 2
    [three] => 3
)

方法 2: array_filter() 関数を使用する

array_filter() 関数は、配列内の要素をフィルターして新しい配列を返すことができます。特定の条件を満たす要素のみが含まれます。以下は、array_filter() 関数を使用して要素を削除するサンプル コードです。

$old_array = array("one" => 1, "two" => 2, "three" => 3, "four" => 2);
$new_array = array_filter($old_array, function($value, $key) use ($old_array) {
    return count(array_keys($old_array, $value)) == 1;
}, ARRAY_FILTER_USE_BOTH);
print_r($new_array);

上記のコードでは、無名関数を使用してフィルター条件を定義します。この関数は、各要素の値とキーを比較して、それが 1 回だけ出現するかどうかを確認します。存在する場合は true を返し、そうでない場合は false を返します。最終的な出力結果は次のとおりです。

Array
(
    [one] => 1
    [three] => 3
)

方法 3: array_diff_key() 関数を使用する

array_diff_key() 関数は、2 つの配列のキー名を比較し、 first 配列内の異なるキー名に対応する要素。以下は、array_diff_key() 関数を使用して要素を削除するサンプル コードです。

$old_array = array("one" => 1, "two" => 2, "three" => 3, "four" => 2);
$new_array = array_diff_key($old_array, array_unique($old_array));
print_r($new_array);

上記のコードでは、まず array_unique() 関数を使用して配列内の重複要素を削除し、その結果を 2 番目のパラメータとして渡します。 ) 関数。最終的な出力は次のとおりです。

Array
(
    [two] => 2
)

方法 4: カスタム関数を使用する

上記の方法が特定のユースケースで機能しない場合は、同じキー値を持つ要素を削除するカスタム関数。以下は、カスタム関数を使用して要素を削除するサンプル コードです。

function delete_duplicate_elements($array) {
    $result = array();
    foreach($array as $key => $value) {
        if(!in_array($value, $result)) {
            $result[$key] = $value;
        }
    }
    return $result;
}
$old_array = array("one" => 1, "two" => 2, "three" => 3, "four" => 2);
$new_array = delete_duplicate_elements($old_array);
print_r($new_array);

上記のコードでは、カスタム関数は in_array() 関数を使用して、要素が結果配列に既に存在するかどうかを確認します。存在しない場合、要素は結果の配列に追加されます。最終的な出力は次のとおりです。

Array
(
    [one] => 1
    [two] => 2
    [three] => 3
)

結論

PHP には、同じキー値を持つ配列要素を削除するためのさまざまな組み込み関数とメソッドが用意されています。ニーズに応じて、自分に合った方法を選択し、プロジェクトで使用できます。この記事が、PHP での配列の操作の向上に役立つことを願っています。

以上がPHP配列内の同じキー値を持つ要素を削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
php怎么对多维数组的某一列求和php怎么对多维数组的某一列求和May 09, 2022 pm 05:55 PM

求和方法:1、用array_column()获取多维数组中指定一列的全部元素,语法“rray_column(数组, '指定列名')”,会返回一个包含全部元素的结果数组;2、用“array_sum(结果数组)”计算结果数组中所有元素的和即可。

php怎么在二维数组末尾增加元素php怎么在二维数组末尾增加元素Apr 26, 2022 pm 06:29 PM

增加元素的方法:1、使用array_push()函数,语法“array_push(二维数组,值1,值2...);”;2、使用array_splice()函数,语法“array_splice(二维数组,count(二维数组),0,元素值)”。

php怎么获取数值在数组中的哪个位置php怎么获取数值在数组中的哪个位置May 07, 2022 pm 09:03 PM

获取方法:1、用“array_values(数组)”将指定数组转为索引数组;2、用“array_search(数值,索引数组)”,在索引数组中搜索数值,返回对应的索引值(下标);3、用“索引值+1”语句获取元素在数组中的位置值。

php数组里面可放数组吗php数组里面可放数组吗May 10, 2022 pm 01:48 PM

php数组里面可以放数组。PHP数组可以存储所有类型的数据,当然也包括数组本身;如果一个数组中的元素是另一个数组,就构成了包含数组的数组,即多维度数组。数组的不同维度标志着需用几个下标(索引)来获取对应的数组元素,比如二维数组需用两个下标。

php数组怎么去掉null值php数组怎么去掉null值May 07, 2022 pm 08:35 PM

方法:1、循环遍历数组,语法“foreach($arr as $k=>$v){}”;2、循环体中,用“==”判断元素值是否为null,如果是则用unset()删除该元素,语法“if($v==null){unset($arr[$k]);}”。

php中只比较值的数组交集函数是什么php中只比较值的数组交集函数是什么Apr 29, 2022 pm 02:41 PM

php中只比较值的数组交集函数是“array_intersect()”;该函数用于比较两个(或更多个)数组的键值,语法“array_intersect(数组1,数组2...)”,会返回一个交集数组,所包含的值是从被比较的数组(数组1)中取。

php数组怎么去掉最大和最小元素php数组怎么去掉最大和最小元素May 09, 2022 pm 08:47 PM

去掉方法:1、用“sort($arr)”对数组进行升序排序,排序后该数组的第一个元素就是最小值,最后一个元素就是最大值;2、用“array_pop($arr)”删除最后一个元素,用“array_shift($arr)”删除第一个元素即可。

php怎么只获取中文字符php怎么只获取中文字符Apr 28, 2022 pm 08:15 PM

php中可用preg_match_all()配合正则表达式过滤字符串,只获取中文字符;语法“preg_match_all("/[\x{4e00}-\x{9fff}]+/u","$str",$arr);”,会将匹配字符存入“$arr”数组中。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。