亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

教你刪除數(shù)組最后一位 php刪除數(shù)組最后一個(gè)元素使用什么方法


教你刪除數(shù)組最后一位 php刪除數(shù)組最后一個(gè)元素使用什么方法

文章插圖
引言PHP 數(shù)組操作,之前我們講了如何根據(jù)值,進(jìn)行多維數(shù)組的排序 。今天說(shuō)一說(shuō),如何根據(jù)值,進(jìn)行數(shù)組元素的刪除 。
學(xué)習(xí)時(shí)間假設(shè)有一個(gè)一維數(shù)組,單純的數(shù)字?jǐn)?shù)組 。為了簡(jiǎn)化問(wèn)題,我們假設(shè)數(shù)組元素沒(méi)有重復(fù)項(xiàng) 。
$messages = [312, 401, 1599, 3, ...];那么該如何移除 “401”這個(gè)元素呢?
最簡(jiǎn)單的辦法,應(yīng)該使用 array_search 和 unset 兩個(gè)函數(shù)完成,代碼這樣寫(xiě):
if (($key = array_search($del_val, $messages)) !== false) {unset($messages[$key]);}函數(shù) array_search 是在數(shù)組中搜索給定的值,如果成功則返回相應(yīng)的鍵名 。如果沒(méi)有找到匹配的值,則返回false 。
我們使用變量 $key 獲取 array_search 的返回值,如果不是 false,那么就是存在 。然后調(diào)用 unset 函數(shù)進(jìn)行刪除即可 。
需要注意的是,比較運(yùn)算符一定是使用“!==”這個(gè)不全等于號(hào),否則如果返回了數(shù)組索引 0,也會(huì)被判斷為空,即 0 == false 。
其他方法換一種方法處理 。我們嘗試使用 array_diff 函數(shù),計(jì)算差集,可以刪除任意多個(gè)元素的值:
array_diff( [312, 401, 15, 401, 3], [401] )但是這個(gè)函數(shù)會(huì)有副作用,就是返回值是新的數(shù)組,保持索引鍵值不變 。同時(shí),原數(shù)組內(nèi)容保持不變 。
深入使用上面我們給定的前提非常簡(jiǎn)單,就是加入數(shù)組內(nèi)都是不同的數(shù)據(jù) 。實(shí)際應(yīng)用中,很難保證這一點(diǎn) 。除非是模型返回的主鍵,或者做了 unique 約束的字段,否則不能保證數(shù)據(jù)集內(nèi)沒(méi)有相同的值 。
手冊(cè)上也說(shuō)了,這樣根據(jù)值移除數(shù)據(jù)內(nèi)所有對(duì)應(yīng)元素的,應(yīng)該使用 array_keys 函數(shù) 。
foreach (array_keys($messages, 401, true) as $key) {unset($messages[$key]);}函數(shù) array_keys 第三個(gè)參數(shù)為可選項(xiàng),用于標(biāo)記是否嚴(yán)格篩選模式 。
寫(xiě)在最后本文通過(guò)不同的方法,演示了如何從數(shù)組中,根據(jù)值移除相應(yīng)元素的方法 。
Happy coding :_)


    以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問(wèn)題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!

    「愛(ài)刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助: