php数组去掉重复值的方法汇总
php数组去掉重复值的方法:1、利用遍历查询来删除重复数组元素;2、使用php内置函数“array_unique”删除数组中的重复值;3、使用“array_flip”实现去重效果。
php数组去掉重复值的方法汇总
几种php删除数组元素方法在很多情况下我们的数组会出现重复情况,那我们删除数组中一些重复的内容怎么办,这些元素必须保持他唯一,所以就想办法来删除它们,下面利用了遍历查询来删除重复数组元素的几种方法。
推荐:《PHP教程》
方法一、完整删除重复数组实例-----删除数组中的一个元素
function array_remove_value(&$arr, $var){ foreach ($arr as $key => $value) { if (is_array($value)) { array_remove_value($arr[$key], $var); } else { $value = trim($value); if ($value == $var) { unset($arr[$key]); } else { $arr[$key] = $value; } } } }
$a是一个数组:
count($a); //得到4 unset($a[1]); //删除第二个元素 count($a); //得到3 echo $a[2]; //数组中仅有三个元素,本想得到最后一个元素,但却得到blue, echo $a[1]; //无值 ?>
也就是说在删除数组中的元素后,数组中的元素个数(用count()得到)变了,但数组下标却没有重新排列,还必须用删除数组前的key来操作相应的值。
后来我采用另一种方法,其实根本就不叫"方法",是用php4现成的函数array_splice()。
count ($a); //得到4 array_splice($a,1,1); //删除第二个元素 count ($a); //得到3 echo $a[2]; //得到yellow echo $a[1]; //得到blue ?>
方法二、删除数组中重复元素的函数
function delmember(&$array, $id) { $size = count($array); for($i = 0; $i <$size - $id - 1; $i ++) { $array[$id + $i] = $array[$id + $i + 1]; } unset($array[$size - 1]); }
补充小例子:
方法一、php有内置函数array_unique可以用来删除数组中的重复值
array_unique -- 移除数组中重复的值
array_unique说明
array array_unique ( array array )
array_unique() 接受 array 作为输入并返回没有重复值的新数组
注意键名保留不变。array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。
注: 当且仅当 (string) $elem1 === (string) $elem2 时两个单元被认为相同。就是说,当字符串的表达一样时。
第一个单元将被保留。
例子:array_unique()
<?php $input = array("a" => "green", "red", "b" => "green", "blue", "red"); $result = array_unique($input); print_r($result); ?>
上例将输出:
Array ( [a] => green [0] => red [1] => blue )
方法二、array_flip实现去重效果
另一个方法是使用php的array_flip函数来间接的实现去重效果
array_flip是反转数组键和值的函数,它有个特性就是如果数组中有二个值是一样的,那么反转后会保留最后一个键和值,利用这个特性我们用他来间接的实现数组的去重.
<?php $arr = array("a"=>"a1","b"=>'b1',"c"=>"a2","d"=>"a1"); $arr1 = array_flip($arr); print_r($arr1);//先反转一次,去掉重复值,输出Array ( [a1] => d [b1] => b [a2] => c ) $arr2 = array_flip($arr); print_r($arr2);//再反转回来,得到去重后的数组,输出Array ( [a1] => d [b1] => b [a2] => c ) $arr3 = array_unique($arr); print_r($arr3);//利用php的array_unique函数去重,输出Array ( [a] => a1 [b] => b1 [c] => a2 ) ?>
二种方法不同的是用array_flip得到的是重复元素最后的键和值,用array_unique得到的是二个重复元素第一个键和值。
Atas ialah kandungan terperinci php数组去掉重复值的方法汇总. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Cara menggunakan tatasusunan PHP untuk menjana dan memaparkan carta dan graf statistik PHP ialah bahasa skrip bahagian pelayan yang digunakan secara meluas dengan keupayaan pemprosesan data dan penjanaan grafik. Dalam pembangunan web, kita selalunya perlu memaparkan carta dan graf statistik data Melalui tatasusunan PHP, kita boleh melaksanakan fungsi ini dengan mudah. Artikel ini akan memperkenalkan cara menggunakan tatasusunan PHP untuk menjana dan memaparkan carta dan graf statistik, serta menyediakan contoh kod yang berkaitan. Memperkenalkan fail perpustakaan yang diperlukan dan helaian gaya Sebelum bermula, kita perlu memperkenalkan beberapa fail perpustakaan yang diperlukan ke dalam fail PHP

Cara menggunakan tatasusunan PHP untuk menjana tayangan slaid dinamik dan paparan gambar Tayangan slaid dan paparan gambar adalah fungsi biasa dalam reka bentuk web dan sering digunakan dalam senario seperti karusel dan paparan galeri. Sebagai bahasa skrip sebelah pelayan yang popular, PHP mempunyai keupayaan untuk memproses data dan menjana halaman HTML dinamik, dan sangat sesuai untuk menjana tayangan slaid dinamik dan paparan gambar. Artikel ini akan memperkenalkan cara menggunakan tatasusunan PHP untuk menjana tayangan slaid dinamik dan paparan gambar, serta memberikan contoh kod yang sepadan. Sediakan data imej Mula-mula, kita perlu menyediakan satu set data laluan imej

Fungsi purata tatasusunan PHP termasuk: 1. array_sum(), yang digunakan untuk mengira jumlah semua nilai dalam tatasusunan Untuk mengira purata, anda boleh menambah semua nilai dalam tatasusunan dan kemudian membahagi dengan bilangan elemen tatasusunan; 2, array_reduce(), digunakan untuk mengulang tatasusunan dan mengira setiap nilai dengan nilai awal 3. array_mean(), digunakan untuk mengembalikan purata tatasusunan, mula-mula mengira jumlah tatasusunan, dan hitung bilangan elemen tatasusunan, kemudian Jumlahnya dibahagikan dengan bilangan elemen tatasusunan untuk mendapatkan purata.

Cara menggunakan tatasusunan PHP untuk melaksanakan log masuk pengguna dan fungsi pengurusan kebenaran Apabila membangunkan laman web, log masuk pengguna dan pengurusan kebenaran adalah salah satu fungsi yang sangat penting. Log masuk pengguna membolehkan kami mengesahkan pengguna dan melindungi keselamatan tapak web. Pengurusan kebenaran boleh mengawal kebenaran pengendalian pengguna di tapak web untuk memastikan pengguna hanya boleh mengakses fungsi yang mereka dibenarkan. Dalam artikel ini, kami akan memperkenalkan cara menggunakan tatasusunan PHP untuk melaksanakan log masuk pengguna dan fungsi pengurusan kebenaran. Kami akan menggunakan contoh mudah untuk menunjukkan proses ini. Mula-mula kita perlu mencipta

Tatasusunan PHP ialah struktur data yang sangat biasa yang sering digunakan semasa proses pembangunan. Walau bagaimanapun, apabila jumlah data meningkat, prestasi tatasusunan boleh menjadi isu. Artikel ini akan meneroka beberapa teknik pengoptimuman prestasi untuk tatasusunan PHP dan memberikan contoh kod khusus. 1. Gunakan struktur data yang sesuai Dalam PHP, sebagai tambahan kepada tatasusunan biasa, terdapat beberapa struktur data lain, seperti SplFixedArray, SplDoublyLinkedList, dll., yang mungkin berprestasi lebih baik daripada tatasusunan biasa dalam situasi tertentu.

Pasangan nilai kunci tatasusunan PHP ialah struktur data yang terdiri daripada kunci dan nilai yang sepadan Kuncinya ialah pengecam elemen tatasusunan, dan nilainya ialah data yang dikaitkan dengan kunci. Ia membolehkan kami menyimpan dan mengakses data menggunakan kunci sebagai pengecam Dengan menggunakan pasangan nilai kunci, kami boleh mengendalikan dan mengurus elemen dalam tatasusunan dengan lebih mudah, menjadikan pembangunan program lebih fleksibel dan cekap.

Cara menukar tatasusunan php daripada dua dimensi kepada tatasusunan satu dimensi: 1. Gunakan traversal gelung untuk melintasi tatasusunan dua dimensi dan tambah setiap elemen pada tatasusunan satu dimensi 2. Gunakan fungsi "array_merge" untuk menggabungkan berbilang; tatasusunan ke dalam Tatasusunan, hantar tatasusunan dua dimensi sebagai parameter kepada fungsi "array_merge" untuk menukarnya menjadi tatasusunan satu dimensi 3. Menggunakan fungsi "array_reduce", semua nilai dalam tatasusunan boleh diproses melalui fungsi panggil balik, dan akhirnya mengembalikan hasil.

Terdapat beberapa cara untuk menentukan tatasusunan dalam PHP: 1. Gunakan fungsi count(), yang sesuai untuk semua jenis tatasusunan. Walau bagaimanapun, perlu diambil perhatian bahawa jika parameter yang dimasukkan bukan tatasusunan, fungsi count() akan mengembalikan 0. Gunakan fungsi sizeof(), yang lebih digunakan untuk mengekalkan keserasian dengan bahasa pengaturcaraan lain; fungsi, Dengan menggunakan gelung untuk melintasi tatasusunan, setiap kali ia dilalui, pembilang ditambah dengan 1, dan akhirnya panjang tatasusunan diperoleh. Fungsi tersuai boleh diubah suai dan dikembangkan mengikut keperluan sebenar, menjadikannya lebih fleksibel.
