PHP中key和current,next的聯(lián)合運用實例分析
本文實例講述了PHP中key和current,next的聯(lián)合運用方法。分享給大家供大家參考,具體如下:
問題:
$arrq = array(); $arrq['tuc'] = array('sss'=>'ewq','shu'=>'sjkah','saa'=>'dwjhaz'); $arrq['tucs'] = array('ssss'=>'ewsq','sQhu'=>dwjhaz','sa12a'=>'dwjQhaz'); $arrq['tuca'] = array('sssd'=>'ewqq','shu2'=>'sjkah','saSa'=>'dwjhhaz');
如何在不破壞數(shù)組結構的情況下去除$arrq數(shù)組中的重復的值?
思路:先將第一個二維數(shù)組中的元素用array_unique函數(shù)輸出。
輸出第二個二維數(shù)組中的元素時,自己先用array_unique處理,再去掉在第一個二維數(shù)組中已經(jīng)存在的元素。
輸出第三個時,自己先用array_unique處理,再去掉在第一個和第二個二維數(shù)組合集中已經(jīng)存在的元素。
以此類推。
總之,自己先要array_unqiue去重,再去掉自身中在前面所在數(shù)組元素合集中存在的元素。
以下為代碼:
<?php $arrq = array(); $arrq['tuc'] = array('sss'=>'ewq','shu'=>'sjkah','saa'=>'dwjhaz'); $arrq['tucs'] = array('ssss'=>'ewsq','sQhu'=>'dwjhaz','sa12a'=>'dwjQhaz'); $arrq['tuca'] = array('sssd'=>'ewqq','shu2'=>'sjkah','saSa'=>'dwjhhaz'); $last=array(); //設置一個空的用來比較的數(shù)組 while($arr=current($arrq)) { //echo key($arrq); $tmp=array_unique($arr); //先清除每個一維數(shù)組自身相同的值 if(count($last)==0) { $last=array_merge($last,$arr); //將已經(jīng)去重的前面的數(shù)組合并 } else { // 對其余一維數(shù)組進行輸出 //echo key($arrq); foreach($arr as $ke=>$va) { if(in_array($arr[$ke], $last)) //如果已經(jīng)存在的元素 unset($arrq[key($arrq)][$ke]); //刪除,此處取得數(shù)組元素的KEY值是關鍵 } $last=array_merge($last,$arr); //將$last變?yōu)榍懊鏀?shù)組的合集,用來進行下次比較 } next($arrq); //指針向后移,這樣才能用key函數(shù)取得不同的$arrq的下標 } //以下輸出處理后的數(shù)組 foreach($arrq as $arr) { foreach($arr as $val) { echo $val." "; } echo "<br>"; } ?>
運行結果為:
更多關于PHP相關內(nèi)容感興趣的讀者可查看本站專題:《PHP網(wǎng)絡編程技巧總結》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《php日期與時間用法總結》、《php面向?qū)ο蟪绦蛟O計入門教程》、《php字符串(string)用法總結》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
- php中使用key,value,current,next和prev函數(shù)遍歷數(shù)組的方法
- PHP中array_keys和array_unique函數(shù)源碼的分析
- php恢復數(shù)組的key為數(shù)字序列的方法
- php實現(xiàn)數(shù)組按指定KEY排序的方法
- PHP處理JSON字符串key缺少雙引號的解決方法
- php數(shù)組索引的Key加引號和不加引號的區(qū)別
- PHP 如何獲取二維數(shù)組中某個key的集合
- PHP 數(shù)組current和next用法分享
- php中current、next與reset函數(shù)用法實例
- 通過PHP current函數(shù)獲取未知字符鍵名數(shù)組第一個元素的值
相關文章
PHP實現(xiàn)統(tǒng)計所有字符在字符串中出現(xiàn)次數(shù)的方法
這篇文章主要介紹了PHP實現(xiàn)統(tǒng)計所有字符在字符串中出現(xiàn)次數(shù)的方法,涉及php字符遍歷與統(tǒng)計運算相關操作技巧,需要的朋友可以參考下2017-10-10PHP實現(xiàn)獲取并生成數(shù)據(jù)庫字典的方法
這篇文章主要介紹了PHP實現(xiàn)獲取并生成數(shù)據(jù)庫字典的方法,可實現(xiàn)讀取數(shù)據(jù)庫并列出詳細數(shù)據(jù)庫信息的功能,需要的朋友可以參考下2016-05-05php通過curl添加cookie偽造登陸抓取數(shù)據(jù)的方法
這篇文章主要介紹了php通過curl添加cookie偽造登陸抓取數(shù)據(jù)的方法,涉及PHP基于curl操作cookie及頁面抓取的相關技巧,需要的朋友可以參考下2016-04-04memcached 和 mysql 主從環(huán)境下php開發(fā)代碼詳解
一般的大站通常做法是 拿著內(nèi)存當數(shù)據(jù)庫來用(memcached). 和很好的讀 寫分離 備份機制 (mysql 的主從) 在這樣的環(huán)境下我們怎么進行PHP開發(fā)呢。2010-05-05比較strtr, str_replace和preg_replace三個函數(shù)的效率
本篇文章是對strtr, str_replace和preg_replace三個函數(shù)的效率問題進行了詳細的分析介紹,需要的朋友參考下2013-06-06