當前位置:首頁 » 編程語言 » 刪除數組元素php

刪除數組元素php

發布時間: 2022-06-26 00:56:24

『壹』 php中怎麼刪除數組的第一個元素和最後一個元素

使用 array_shift 刪除數組的第一個元素,例如:

$user=array('apple','banana','orange');
$result=array_shift($user);
print_r($result);
print_r($user);

array_pop() 彈出並返回 array 數組的最後一個單元,並將數組 array 的長度減一。如果 array 為空(或者不是數組)將返回 NULL。

array_shift() 將 array 的第一個單元移出並作為結果返回,將 array 的長度減一並將所有其它單元向前移動一位。所有的數字鍵名將改為從零開始計數,文字鍵名將不變。如果 array 為空(或者不是數組),則返回 NULL。

『貳』 PHP代碼實現:1)刪除整個數組2)刪除數組中指定的元素3)刪除重復的元素

$arr = array(1,2,4,2,0,9,8,5);//定義一個數組。

$arr1 = $arr; //定義另一個數組和上一個數組一樣。

//循環第一個數組讓後循環第二個數組 用第一個數組的每個值和第二個數組比較如果相同就刪除,最後輸出第二個數組就行了。

for($i = 0;$i<count($arr);$i++){

for($j=$i+1;$j<count($arr);$j++){

if($arr[$i] == $arr[$j])

unset($arr1[$i]);

}

}

echo'<pre>';

print_r($arr1);

第二 如果允許使用array_uniqe()函數的話,直接array_uniqe(直接寫數組名就ok)。

在PHP中可以使用內置函數array_unique()來直接刪除重復元素,也可以使用array_flip()函數來間接刪除重復元素。

1.array_unique()函數

array_unique()函數可以移除數組中的重復的值,並返回結果數組;當幾個數組元素的值相等時,只保留第一個元素,其他的元素被刪除。

代碼示例:

<?php$result1 = array("a" => "green", "red", "b" => "green", "blue",

"red");var_mp($result1);$result2 = array_unique($result1);var_mp($result2);?>

2.array_flip()函數

array_flip()是反轉數組鍵和值的函數,它有個特性就是如果數組中有二個值是一樣的,那麼反轉後會保留最後一個鍵和值,利用這個特性我們用他來間接的實現數組的去重。

代碼示例:

<?phpheader("content-type:text/html;

charset=utf-8");$a = array(1, 5, 2, 5, 1, 3, 2, 4, 5);// 輸出原始數組echo "原始數組

:";var_mp($a);// 。

通過使用翻轉鍵和值移除重復值$a = array_flip($a);

// 通過再次翻轉鍵和值來恢復數組元素$a = array_flip($a);// 重新排序數組鍵$a = array_values($a);// 輸出更新後的數組echo "更新數組 :";var_mp($a);?>

『叄』 php數組刪除元素示例

我們來舉一個例子:
復制代碼
代碼如下:
<?php
$arr
=
array('a','b','c','d');
unset($arr[1]);
print_r($arr);
?>
我之前想像的是unset之後,數組$arr應該會壓縮數組以填補缺少的元素位置,但print_r($arr)之後,結果卻不是那樣的,最終結果是
Array
(
[0]
=>
a
[2]
=>
c
[3]
=>
d
);
如果是這樣的話,那我們就來看看數字數組的形式
復制代碼
代碼如下:
<?php
$arr
=
range(5,10,4);
print_r($arr);//<span
style="font-family:
Simsun;font-size:16px;
">Array
(
[0]
=>
5
[1]
=>
6
[2]
=>
7
[3]
=>
8
[4]
=>
9
[5]
=>
10
)</span>
unset($arr[1]);//<span
style="font-family:
Simsun;font-size:16px;
">Array
(
[0]
=>
5
[2]
=>
7
[3]
=>
8
[4]
=>
9
[5]
=>
10
)</span>
print_r($arr);
?>
可以看到輸出的形式也是數組是會填補缺少的元素的位置。那麼怎麼才能做到缺少的元素會被填補並且數組會被重新索引呢?答案是array_splice():<pre
name="code"
class="php"><?php
復制代碼
代碼如下:
$arr
=
array('a','b','c','d');
array_splice($arr,1,1);
print_r($arr);
//
<span
style="font-family:
Simsun;font-size:16px;
">Array
(
[0]
=>
a
[1]
=>
c
[2]
=>
d
)</span>
?>

『肆』 刪除數組元素實用的PHP數組函數

/**
*
從數組中刪除空白的元素(包括只有空白字元的元素)
*
*
@param
array
$arr
*
@param
boolean
$trim
*/
復制代碼
代碼如下:
function
array_remove_empty(&
$arr,
$trim
=
true)
{
foreach
($arr
as
$key
=>
$value)
{
if
(is_array($value))
{
array_remove_empty($arr[$key]);
}
else
{
$value
=
trim($value);
if
($value
==
'')
{
unset($arr[$key]);
}
elseif
($trim)
{
$arr[$key]
=
$value;
}
}
}
}
/**
*
將一個二維數組轉換為
hashmap
*
*
如果省略
$valueField
參數,則轉換結果每一項為包含該項所有數據的數組。
*
*
@param
array
$arr
*
@param
string
$keyField
*
@param
string
$valueField
*
*
@return
array
*/
復制代碼
代碼如下:
function
array_to_hashmap(&
$arr,
$keyField,
$valueField
=
null)
{
$ret
=
array();
if($valueField)
{
foreach
($arr
as
$row)
{
$ret[$row[$keyField]]
=
$row[$valueField];
}
}
else
{
foreach($arr
as
$row)
{
$ret[$row[$keyField]]
=
$row;
}
}
return
$ret;
}

『伍』 php如何從數組中刪除一個元素

如果要在某個數組中刪除一個元素,可以直接用的unset,例子代碼:
<?php
$arr
=
array('a','b','c','d');
print_r($arr);
unset($arr[1]);
print_r($arr);
?>
以上代碼輸出的結果如下:
E:\TEMP\文件\exp>a.phpArray(
[0]
=>
a
[1]
=>
b
[2]
=>
c
[3]
=>
d)Array(
[0]
=>
a
[2]
=>
c
[3]
=>
d)

『陸』 如何正確實現PHP刪除數組重復元素

array_unique
(PHP 4 >= 4.0.1, PHP 5, PHP 7)
array_unique — 移除數組中重復的值

說明

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )

array_unique() 接受 array 作為輸入並返回沒有重復值的新數組。

注意鍵名保留不變。array_unique() 先將值作為字元串排序,然後對每個值只保留第一個遇到的鍵名,接著忽略所有後面的鍵名。這並不意味著在未排序的 array 中同一個值的第一個出現的鍵名會被保留。

Note: 當且僅當 (string) $elem1 === (string) $elem2 時兩個單元被認為相同。就是說,當字元串的表達一樣時。 第一個單元將被保留。

參數

array

輸入的數組。
sort_flags

The optional second parameter sort_flags may be used to modify the sorting behavior using these values:

Sorting type flags:

SORT_REGULAR - compare items normally (don't change types)

SORT_NUMERIC - compare items numerically

SORT_STRING - compare items as strings

SORT_LOCALE_STRING - compare items as strings, based on the current locale.

返回值

Returns the filtered array.

更新日誌

版本
說明

5.2.10 Changed the default value of sort_flags back to SORT_STRING.
5.2.9 Added the optional sort_flags defaulting to SORT_REGULAR. Prior to 5.2.9, this function used to sort the array with SORT_STRING internally.

範例

Example #1 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
)

Example #2 array_unique() 和類型

<?php
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_mp($result);
?>

以上常式會輸出:

array(2) {
[0] => int(4)
[2] => string(1) "3"
}

參見

array_count_values() - 統計數組中所有的值出現的次數

注釋

Note: Note that array_unique() is not intended to work on multi dimensional arrays.

『柒』 php 刪除包含某一字元的數組元素

PHP刪除包含某一字元的數組元素,首先要通過循環判斷元素值是否包含字元,然後刪除即可。示例代碼:
<?php
//數組
$arr=array(
"tep"=>"uuy98",
"num"=>55,
"str"=>"iuy6654",
"legth"=>90
);
//包含字元u
$str="u";
foreach ($arr as $k=>$v){
//判斷數組值是否包含字元u
if(strpos($v, $str)!== false){

//刪除對應的元素
unset($arr[$k]);

}
}
print_r($arr);
//Array ( [num] => 55 [legth] => 90 )
?>

『捌』 怎麼刪除php數組中的元素

如果要在某個數組中刪除一個元素,可以直接用的unset,例子代碼:
<?php
$arr = array('a','b','c','d');
print_r($arr);
unset($arr[1]);
print_r($arr);
?>
以上代碼輸出的結果如下:
E:\TEMP\文件\exp>a.php
Array
(
[0] => a
[1] => b
[2] => c
[3] => d
)
Array
(
[0] => a
[2] => c
[3] => d
)
也就是說,刪除了指定的元素,其它元素的序號是不改變的。

『玖』 php 數組元素的更改和刪除問題

break;
case
"a2":
//根據$id來刪除$strArray數組中對應鍵值的元素值,完成後就重新生成數組.
//大家幫我完成這部分.
//下面是我補充的
unset($strArray[$id]);
//補充結束
break;
case
"a3":
//用戶把信息提交到這里,根據提交的$id與數組$strArray的鍵值對比,如果相同就把數組對應的元素值改變,注:其它的元素值和鍵位值都不變.完成後就重新生成數組.
//大家把這部分幫我完成一下
//下面是我補充的
if
(isset($strArray[$id]))
$strArray[$id]=$value;
//補充結束
break;

熱點內容
死鎖避免的演算法 發布:2025-02-05 04:43:07 瀏覽:579
python查文檔 發布:2025-02-05 04:27:49 瀏覽:496
javaxmldom 發布:2025-02-05 04:27:40 瀏覽:9
linux修改內存大小 發布:2025-02-05 04:26:05 瀏覽:997
ftp命令復制文件 發布:2025-02-05 04:26:00 瀏覽:303
python好用的ide 發布:2025-02-05 04:14:18 瀏覽:516
id密碼開頭是多少 發布:2025-02-05 04:11:51 瀏覽:101
數據結構c語言ppt 發布:2025-02-05 04:11:45 瀏覽:43
如何用學習機配置的筆寫字 發布:2025-02-05 04:09:15 瀏覽:395
5歲編程 發布:2025-02-05 04:06:21 瀏覽:653