溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何去掉php數(shù)組中的重復(fù)的元素

發(fā)布時(shí)間:2020-07-30 09:49:32 來源:億速云 閱讀:129 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關(guān)如何去掉php數(shù)組中的重復(fù)的元素,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

php去掉數(shù)組中的重復(fù)元素的方法:首先創(chuàng)建一個(gè)PHP示例文件;然后定義一個(gè)“array_remove_value”方法;接著通過unset等函數(shù)進(jìn)行刪除;最后用刪除數(shù)組前的key來操作相應(yīng)的值即可。

方法一、完整刪除重復(fù)數(shù)組實(shí)例-----刪除數(shù)組中的一個(gè)元素

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是一個(gè)數(shù)組:

count($a); //得到4
unset($a[1]); //刪除第二個(gè)元素
count($a); //得到3
echo $a[2]; //數(shù)組中僅有三個(gè)元素,本想得到最后一個(gè)元素,但卻得到blue,
echo $a[1]; //無值
?>

也就是說在刪除數(shù)組中的元素后,數(shù)組中的元素個(gè)數(shù)(用count()得到)變了,但數(shù)組下標(biāo)卻沒有重新排列,還必須用刪除數(shù)組前的key來操作相應(yīng)的值。

后來我采用另一種方法,其實(shí)根本就不叫"方法",是用php4現(xiàn)成的函數(shù)array_splice()。

count ($a); //得到4
array_splice($a,1,1); //刪除第二個(gè)元素
count ($a); //得到3
echo $a[2]; //得到y(tǒng)ellow
echo $a[1]; //得到blue
?>

方法二、刪除數(shù)組中重復(fù)元素的函數(shù)

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]);
}

看完上述內(nèi)容,你們對(duì)如何去掉php數(shù)組中的重復(fù)的元素有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI