亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

php對二維數組進行相關操作(排序、轉換、去空白等)

2020-03-22 18:16:07
字體:
來源:轉載
供稿:網友
$result=array_reverse($input); //將數組顛倒,不保留鍵名 $result_keyed=array_reverse($input,true); //將數組顛倒,保留鍵名 array_keys($array,"blue"); //返回值為blue的鍵名 1. PHP二維數組去重復項函數
PHP數組去除重復項有個內置函數array_unique (),但是php的 array_unique函數只適用于一維數組,對多維數組并不適用,以下提供一個二維數組的array_unique函數
function unique_arr($array2D,$stkeep=false,$ndformat=true) // 判斷是否保留一級數組鍵 (一級數組鍵可以為非數字) if($stkeep) $stArr = array_keys($array2D); // 判斷是否保留二級數組鍵 (所有二級數組鍵必須相同) if($ndformat) $ndArr = array_keys(end($array2D)); //降維,也可以用implode,將一維數組轉換為用逗號連接的字符串 foreach ($array2D as $v){ $v = join(",",$v); $temp[] = $v; //去掉重復的字符串,也就是重復的一維數組 $temp = array_unique($temp); //再將拆開的數組重新組裝 foreach ($temp as $k = $v) if($stkeep) $k = $stArr[$k]; if($ndformat) $tempArr = explode(",",$v); foreach($tempArr as $ndkey = $ndval) $output[$k][$ndArr[$ndkey]] = $ndval; else $output[$k] = explode(",",$v); return $output;
$array2D = array('first'= array('title'= '1111','date'= '2222'),'second'= array('title'= '1111','date'= '2222'),'third'= array('title'= '2222','date'= '3333'));
第一組 :sort 和 rsort ,按照PHP數組鍵值的順序asc和逆序desc進行排序,同時破壞原來數組的索引關系——其實是刪除索引之后重新建立從0開始的數字索引。
$a = array('a'= 1,2); sort($a); printr($a); rsort($a); printr($a); /*Array [0] = 1 [1] = 2 Array [0] = 2 [1] = 1 */ 第二組函數:asort 和 arsort ,這兩個函數就比較厲害一點了,只要他們可以保留數組原有的索引關系,把上例的sort 和 rsort 分別用這兩個函數替換一下
$a = array('a'= 1,2); asort($a); printr($a); arsort($a); printr($a); Array [a] = 1 [0] = 2 Array [0] = 2 [a] = 1 */ 第三組PHP數組排序函數:krsort 和 ksort ,這兩個不同于以上兩組,這兩函數是對鍵名進行排序的.
$a = array('a'= 1,2); ksort($a); printr($a); krsort($a); printr($a); Array [0] = 2 [a] = 1 Array [a] = 1 [0] = 2 通過自定義函數對PHP數組進行排序,有三個函數分別是:
uasort 通過自定義函數對PHP數組的鍵值進行排序,并且保留原來的索引關系。
uksort 通過自定義函數對PHP數組的鍵名進行排序,并且保留原來的索引關系。
usort通過自定義函數對PHP數組的鍵值進行排序,并且刪除原來的索 引關系,從零開始建立新的索引。
下面是二維排序:
* @package BugFree * @version $Id: FunctionsMain.inc.php,v 1.32 2005/09/24 11:38:37 wwccss Exp $ * Sort an two-dimension array by some level two items use array_multisort() function. * sortArr($Array,"Key1","SORT_ASC","SORT_RETULAR","Key2"……) * @author Chunsheng Wang wwccss@263.net * @param array $ArrayData the array to sort. * @param string $KeyName1 the first item to sort by. * @param string $SortOrder1 the order to sort by("SORT_ASC"|"SORT_DESC") * @param string $SortType1 the sort type("SORT_REGULAR"|"SORT_NUMERIC"|"SORT_STRING") * @return array sorted array. function sortArr($ArrayData,$KeyName1,$SortOrder1 = "SORT_ASC",$SortType1 = "SORT_REGULAR") if(!is_array($ArrayData)) return $ArrayData; // Get args number. $ArgCount = func_num_args(); // Get keys to sort by and put them to SortRule array. for($I = 1;$I $ArgCount;$I ++) $Arg = func_get_arg($I); if(!eregi("SORT",$Arg)) $KeyNameList[] = $Arg; $SortRule[] = '$'.$Arg; else $SortRule[] = $Arg; // Get the html' target='_blank'>values according to the keys and put them to array. foreach($ArrayData AS $Key = $Info) foreach($KeyNameList AS $KeyName) ${$KeyName}[$Key] = strtolower($Info[$KeyName]); // Create the eval string and eval it. $EvalString = 'array_multisort('.join(",",$SortRule).',$ArrayData);'; eval ($EvalString); return $ArrayData; 實例:
//################# 示例 ################# $arr = array( array( 'name' = '學習', 'size' = '1235', 'type' = 'jpe', 'time' = '1921-11-13', 'class' = 'dd', array( 'name' = '中國功夫', 'size' = '153', 'type' = 'jpe', 'time' = '2005-11-13', 'class' = 'jj', array( 'name' = '編程', 'size' = '35', 'type' = 'gif', 'time' = '1997-11-13', 'class' = 'dd', array( 'name' = '中國功夫', 'size' = '65', 'type' = 'jpe', 'time' = '1925-02-13', 'class' = 'yy', array( 'name' = '中國功夫', 'size' = '5', 'type' = 'icon', 'time' = '1967-12-13', 'class' = 'rr', echo ' pre print_r($arr); echo ' br //注意:按照數字方式排序時 153 比 65 小 $temp = sortArr($arr,"name","SORT_ASC","type","SORT_DESC","size","SORT_ASC","SORT_STRING"); print_r($temp); echo ' /pre 3. 多維數組轉一維數組
function rebuild_array($arr){ //rebuild a array static $tmp=array(); for($i=0; $i count($arr); $i++){ if(is_array($arr[$i])){ rebuild_array($arr[$i]); }else{ $tmp[]=$arr[$i]; return $tmp; 實例:
$arr=array('123.html','456.html',array('dw.html','fl.html',array('ps.html','fw.html')),'ab.html'); // 定義一個三維數組,用來檢測我們的函數 echo ' pre print_r(rebuild_array($arr)); echo ' /pre 4. 從數組中刪除空白的元素
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; 實例:
$a = array(array(3),2,'',array('',23),0); array_remove_empty($a); printr($a); // printr 函數請在本文中找 5. 獲取多維數組下特定鍵下的值,并生成一維數組
function getall_by_key(array $arr, $key){ if (!trim($key)) return false; preg_match_all("http://"$key/";/w{1}:( :/d+:|)(.* /", serialize($arr), $output); return $output[1]; $testArr = array('111'= 100, 'out'= 200, '333' = array('out' = 310, array(321, 322, 'out' = "this is a test"))); printr(getall_by_key($testArr, 'out')); 以上就是本文的全部內容,php對于二維數組的相應操作介紹的很詳細,希望對大家的學習有所幫助。PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97国产精品视频人人做人人爱| 精品国产乱码久久久久久天美| 久久久久久久久久婷婷| 欧美日韩人人澡狠狠躁视频| 神马国产精品影院av| 亚洲人成电影网站色| 欧美日韩国产成人高清视频| 国产精品中文字幕在线| 欧美性生交大片免网| 欧美激情手机在线视频| 久久久精品视频在线观看| 欧美精品久久久久久久| 蜜臀久久99精品久久久无需会员| 欧美激情按摩在线| 2019av中文字幕| 啊v视频在线一区二区三区| 日韩精品久久久久久久玫瑰园| 欧美激情一区二区三区成人| 国产精品午夜一区二区欲梦| 中文字幕日韩视频| 国产成人精品久久二区二区91| 欧美日韩中文字幕在线视频| 日韩一区二区在线视频| 亚洲aⅴ日韩av电影在线观看| 91黑丝高跟在线| 97国产精品视频人人做人人爱| 曰本色欧美视频在线| 欧美性做爰毛片| 久久在线免费视频| 亚洲精品久久久久久下一站| 92福利视频午夜1000合集在线观看| 亚洲激情电影中文字幕| 国产亚洲日本欧美韩国| 亚洲欧美另类中文字幕| 国产精品视频专区| 亚洲国产精品女人久久久| 2019中文在线观看| 亚洲精品一区中文| 欧美日韩国产精品| 亚洲成色777777在线观看影院| 欧美风情在线观看| 最新国产精品亚洲| 久久精品99久久香蕉国产色戒| 国产一区二区三区在线免费观看| 俺去了亚洲欧美日韩| 亚洲石原莉奈一区二区在线观看| 韩国视频理论视频久久| 中文字幕日韩av综合精品| 97婷婷大伊香蕉精品视频| 久青草国产97香蕉在线视频| 日韩久久午夜影院| 国产一区二区日韩| 深夜福利91大全| 国产精品激情av在线播放| 亚洲国产中文字幕久久网| 亚洲国产精品久久精品怡红院| 精品视频在线播放| 色99之美女主播在线视频| 亚洲专区中文字幕| 久久综合免费视频| 亚洲a∨日韩av高清在线观看| 色哟哟亚洲精品一区二区| 欧美大胆在线视频| 日韩精品在线观看网站| 91国产在线精品| 欧美成人精品在线播放| 久久视频免费在线播放| 91在线免费视频| 136fldh精品导航福利| 欧美专区在线观看| 国产精品扒开腿做爽爽爽的视频| 久热在线中文字幕色999舞| 亚洲视频一区二区三区| 久久全球大尺度高清视频| 成人黄色av网| 亚洲国产精品成人一区二区| 91欧美精品成人综合在线观看| 欧美疯狂做受xxxx高潮| 国内精品一区二区三区| 亚洲成av人乱码色午夜| 久久久久久久久综合| 中文字幕亚洲欧美一区二区三区| 精品网站999www| 国产精品亚洲аv天堂网| 美日韩精品视频免费看| 成人激情视频在线播放| 国产精品久久久久久久久粉嫩av| 日韩在线观看成人| 国产精品青草久久久久福利99| 成年无码av片在线| 国产主播喷水一区二区| 亚洲精品电影网| 欧美做受高潮电影o| 国产精品999999| 青青在线视频一区二区三区| 亚洲丁香婷深爱综合| 精品国产欧美一区二区三区成人| 日韩欧美中文在线| 精品久久久久久久久久ntr影视| 国产精品视频永久免费播放| 日韩免费在线观看视频| 成年无码av片在线| 成人黄色短视频在线观看| 免费不卡欧美自拍视频| 亚洲性夜色噜噜噜7777| 97在线看免费观看视频在线观看| 日韩中文字幕视频在线观看| 欧美日韩亚洲精品一区二区三区| 26uuu另类亚洲欧美日本一| 91成人福利在线| 亚洲r级在线观看| 最近2019中文字幕mv免费看| 96精品久久久久中文字幕| 国产成人精品av| 久久久精品2019中文字幕神马| 日韩av片免费在线观看| 久久亚洲一区二区三区四区五区高| 欧美成人精品三级在线观看| 91国产精品视频在线| 亚洲国产一区二区三区四区| 亚洲女人被黑人巨大进入| 亚洲精品在线看| 亚洲三级免费看| 日韩一区av在线| 日韩欧美亚洲一二三区| 亚洲精品v天堂中文字幕| 久久久成人的性感天堂| 91麻豆国产精品| 91丝袜美腿美女视频网站| 日韩免费电影在线观看| 久久噜噜噜精品国产亚洲综合| 国产精品99久久久久久久久久久久| 欧美在线观看网站| 欧美成人激情图片网| 亚洲最新视频在线| 成人欧美一区二区三区在线湿哒哒| 日韩亚洲综合在线| 伊人一区二区三区久久精品| 日韩av片永久免费网站| 国产成人欧美在线观看| 国产精品成人aaaaa网站| 91午夜在线播放| 88xx成人精品| 欧美日韩在线观看视频小说| 日韩欧美在线中文字幕| 日韩高清有码在线| 亚洲综合av影视| 日韩精品福利在线| 国产视频亚洲精品| 一本一道久久a久久精品逆3p| 日本韩国在线不卡| 中文精品99久久国产香蕉| 国产成+人+综合+亚洲欧美丁香花| 欧美大尺度在线观看| 欧美在线视频一二三| 国产精品视频精品视频| 久久天天躁狠狠躁夜夜av| 欧美激情亚洲一区| 久久综合国产精品台湾中文娱乐网| 日韩一区二区三区在线播放| 97激碰免费视频| 欧美裸身视频免费观看| 欧美高清在线视频观看不卡| 欧美成人精品在线视频|