麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > PHP > 正文

PHP數(shù)組函數(shù)知識匯總

2020-03-22 20:28:35
字體:
供稿:網(wǎng)友
本文為大家分享了PHP數(shù)組函數(shù)基礎(chǔ)知識,供大家參考,具體內(nèi)容如下數(shù)組array是非常重要的數(shù)據(jù)類型。相對于其他的數(shù)據(jù)類型,它更像是一種結(jié)構(gòu),而這種結(jié)果構(gòu)可以存儲一系列數(shù)值。數(shù)組能夠在單一變量名中存儲許多值,并且能夠通過引用下標(biāo)號來訪問某個值。
在 PHP 中,有三種數(shù)組類型:
索引數(shù)組 - 帶有數(shù)字索引的數(shù)組
關(guān)聯(lián)數(shù)組 - 帶有指定鍵的數(shù)組
多維數(shù)組 - 包含一個或多個數(shù)組的數(shù)組一、創(chuàng)建數(shù)組array(key = html' target='_blank'>value)
1、創(chuàng)建索引數(shù)組使用array()函數(shù)聲明數(shù)組。PHP屬于弱類型語言相對較靈活和方便,也可以直接是數(shù)組的元素值value,不需要鍵值key,索引是自動分配的(索引從 0 開始)。
例:array("1" = "百度","2" = "阿里","3" = "騰訊");或者是不使用鍵值:array("百度","阿里","騰訊");當(dāng)然也可以寫成:$arr[0] = "百度";$arr[1] = "阿里";$arr[2] = "騰訊";2、創(chuàng)建關(guān)聯(lián)數(shù)組關(guān)聯(lián)數(shù)組和索引數(shù)組類似,只是關(guān)聯(lián)數(shù)組不能夠像索引數(shù)組的鍵名那樣只能夠為數(shù)字,它可以是數(shù)值和字符串以及混合形式,判斷一個數(shù)組是否為關(guān)聯(lián)數(shù)組的依據(jù)是:數(shù)組中的鍵名是否存在一個不是數(shù)字的。不是就是關(guān)聯(lián)。array("李彥宏" = "百度","馬云" = "阿里","馬化騰" = "騰訊");3、多維數(shù)組array(array(),array()) 二維數(shù)組獲得數(shù)組的長度 - count() 函數(shù)$arr = array("百度","阿里","騰訊");echo count($arr); //結(jié)果返回3(說明數(shù)組中有三個元素)二、遍歷數(shù)組輸出數(shù)組中元素的值。對于索引數(shù)組常用for、foreach;對于關(guān)聯(lián)數(shù)組常用foreach。使用print_r()函數(shù)打印循環(huán)后的結(jié)果,也可以用var_dump()。1、遍歷索引數(shù)組遍歷并輸出索引數(shù)組的所有值,可以使用for、 foreach(array_expression as value)、foreach(arrayexpressionaskey = $value) 循環(huán),如下:使用for循環(huán)
$arr = array("百度","阿里","騰訊");$arrlen = count($arr);//獲取數(shù)組的長度for ($i=0; $i $arrlen ; $i++) { $data[] = $arr[$i]; echo " pre //換行顯示print_r($data);打印結(jié)果顯示如下:
Array
(
[0] = 百度
[1] = 阿里
[2] = 騰訊
)
使用foreach循環(huán)
$arr = array("百度","阿里","騰訊");foreach ($arr as $value) { $data[] = $value;echo " pre //換行顯示print_r($data);//打印結(jié)果和上面一樣注意:data后面有一個數(shù)組符號[],為什么呢?2、遍歷關(guān)聯(lián)數(shù)組遍歷并輸出關(guān)聯(lián)數(shù)組的所有值,可以使用 foreach (array_expression as key= value) 循環(huán),如下:$arr = array("李彥宏" = "百度","馬云" = "阿里","馬化騰" = "騰訊");foreach ($arr as $key = $value) { $data[$key] = $value;echo " pre //換行顯示print_r($data);打印結(jié)果顯示:
Array [李彥宏] = 百度 [馬云] = 阿里 [馬化騰] = 騰訊)注意到?jīng)]?此時的data后是[$key]?而不是[]
一個數(shù)關(guān)聯(lián)數(shù)組一個是數(shù)字索引數(shù)組,三、增加刪除數(shù)組的元素在數(shù)組元素的尾部增加
array_push(array,value1,value2…) 函數(shù)向第一個參數(shù)的數(shù)組尾部添加一個或多個元素(入棧),然后返回新數(shù)組的長度。
該函數(shù)等于多次調(diào)用 array[]=value。$arr = array("百度","阿里","騰訊");array_push($arr,"知乎","微博");echo " pre //換行顯示print_r($arr);//打印結(jié)果顯示:Array [0] = 百度 [1] = 阿里 [2] = 騰訊 [3] = 知乎 [4] = 微博在數(shù)組元素的開始增加
array_unshift(array,value1,value2,value3…) 函數(shù)用于向數(shù)組插入新元素。新數(shù)組的值將被插入到數(shù)組的開頭。$arr = array("百度","阿里","騰訊");array_unshift($arr,"知乎","微博");echo " pre //換行顯示print_r($arr);//打印結(jié)果顯示:Array [0] = 知乎 [1] = 微博 [2] = 百度 [3] = 阿里 [4] = 騰訊在數(shù)組元素的尾部刪除
array_pop(array) 函數(shù)刪除數(shù)組中的最后一個元素。$arr = array("百度","阿里","騰訊");array_pop($arr);echo " pre //換行顯示print_r($arr);打印結(jié)果顯示:Array [0] = 百度 [1] = 阿里在數(shù)組元素的開始刪除
array_shift(array) 函數(shù)刪除數(shù)組中第一個元素 并可以返回被刪除元素的值。$arr = array("百度","阿里","騰訊");array_shift($arr);echo " pre //換行顯示print_r($arr);打印結(jié)果顯示:Array [0] = 阿里 [1] = 騰訊移除數(shù)組中重復(fù)的值
array_unique(array) 函數(shù)移除數(shù)組中的重復(fù)的值,并返回結(jié)果數(shù)組。$arr = array("百度","阿里","騰訊","百度","微博");$data = array_unique($arr);echo " pre print_r($data);打印結(jié)果顯示:Array [0] = 百度 [1] = 阿里 [2] = 騰訊 [4] = 微博四、定位數(shù)組元素搜索數(shù)組中存在的值
in_array(search,array,type)檢查數(shù)組中是否存在指定的值。
如果給定的值 search 存在于數(shù)組 array 中則返回 true。如果第三個參數(shù)設(shè)置為 true,函數(shù)只有在元素存在于數(shù)組中且數(shù)據(jù)類型與給定值相同時才返回 true。如果沒有在數(shù)組中找到參數(shù),函數(shù)返回 false。$arr = array("百度","阿里","騰訊");while (in_array("百度", $arr)) { echo "已經(jīng)找到"; break;} //輸出已經(jīng)找到在數(shù)組中根據(jù)條件取出一段值: array_slice(array,start,length,preserve)
start 必需。數(shù)值。規(guī)定取出元素的開始位置。 0 = 第一個元素。
如果該值設(shè)置為正數(shù),則從前往后開始取。
如果該值設(shè)置為負(fù)數(shù),則從后向前取 start 絕對值。 -2 意味著從數(shù)組的倒數(shù)第二個元素開始。length 可選。數(shù)值。規(guī)定被返回數(shù)組的長度。
如果該值設(shè)置為整數(shù),則返回該數(shù)量的元素。
如果該值設(shè)置為負(fù)數(shù),則函數(shù)將在舉例數(shù)組末端這么遠(yuǎn)的地方終止取出。
如果該值未設(shè)置,則返回從 start 參數(shù)設(shè)置的位置開始直到數(shù)組末端的所有元素。$arr = array("百度","阿里","騰訊","知乎","微博");$data = array_slice($arr,0,4);echo " pre print_r($data);打印結(jié)果顯示:Array [0] = 百度 [1] = 阿里 [2] = 騰訊 [3] = 知乎array_splice(array,start,length,array) 函數(shù)從數(shù)組中移除選定的元素,并用新元素取代它。該函數(shù)也將返回包含被移除元素的數(shù)組。$arr1 = array("百度","阿里","騰訊");$arr2 = array("知乎","微博");array_splice($arr1,0,2,$arr2);echo " pre print_r($arr1);打印結(jié)果顯示:Array [0] = 知乎 [1] = 微博 [2] = 騰訊五、數(shù)組合并、拆分、比較array_merge()函數(shù)將數(shù)組合并到一起,返回一個聯(lián)合的數(shù)組。所得到的數(shù)組以第一個輸入數(shù)組參數(shù)開始,按后面數(shù)組參數(shù)出現(xiàn)的順序依次追加。$arr1 = array("百度","阿里","騰訊");$arr2 = array("知乎","微博");$data = array_merge($arr1,$arr2);echo " pre print_r($data);打印結(jié)果顯示:Array [0] = 百度 [1] = 阿里 [2] = 騰訊 [3] = 知乎 [4] = 微博遞歸追加數(shù)組
array_merge_recursive()函數(shù)與array_merge()相同,可以將兩個或多個數(shù)組合并到一起,形成一個聯(lián)合的數(shù)組。兩者之間的區(qū)別在于,當(dāng)某個輸入數(shù)組中的某個鍵已經(jīng)存在于結(jié)果數(shù)組中時該函數(shù)會采取不同的處理方法。array_merge()會覆蓋前面存在的鍵/值對,將其替換為當(dāng)前輸入數(shù)組中的鍵/值對,而array_merge_recursive()將兩個值合并在一起,形成一個新的數(shù)組并以原有的鍵作為數(shù)組名。其形式為:$arr= array('one'= 'C', 'one'= 'B'); $arr1= array('three'= '1', 'one'= '2'); $arr2= array_merge_recursive($arr, $arr1); echo " pre print_r($arr2); 打印結(jié)果顯示:Array [one] = Array [0] = B [1] = 2 [three] = 1合并兩個數(shù)組
array_combine()函數(shù)會生成一個新數(shù)組,這個數(shù)組由一組提交的鍵和對應(yīng)的值組成,其形式為:$arr= array('A', 'B'); $arr1= array('1', '2'); $arr2= array_combine($arr, $arr1);echo " pre print_r($arr2); 打印結(jié)果顯示:Array [A] = 1 [B] = 2求數(shù)組的交集
array_intersect()函數(shù)返回一個保留了鍵的數(shù)組,這個數(shù)組只由第一個數(shù)組中出現(xiàn)的且在其他每個輸入數(shù)組中都出現(xiàn)的值組成。其形式如下:$arr= array('A', 'B', 'C', 'D'); $arr1= array('A', 'B', 'E'); $arr2= array('A', 'F', 'D'); $arr3= array_intersect($arr, $arr1, $arr2); echo " pre print_r($arr3); 打印結(jié)果顯示:Array [0] = A注意:只有在兩個元素有相同的數(shù)據(jù)類型時,array_intersect()才會認(rèn)為它們相等。求關(guān)聯(lián)數(shù)組的交集
array_intersect_assoc()與array_intersect()基本相同,只不過它在比較中還考慮了數(shù)組的鍵。因此,只有在第一個數(shù)組中出現(xiàn),且在所有其他輸入數(shù)組中也出現(xiàn)的鍵/值對才被返回到結(jié)果數(shù)組中。其形式如下:$arr= array('a'= 'A', 'b'= 'B', 'c'= 'C', 'd'= 'D'); $arr1= array('a'= 'A', 'c'= 'B', 'E'); $arr2= array('a'= 'A', 'b'= 'F', 'd'= 'B'); $arr3= array_intersect_assoc($arr, $arr1, $arr2); echo " pre print_r($arr3); 打印結(jié)果顯示:Array [a] = A求關(guān)聯(lián)數(shù)組的差集
函數(shù)array_diff_assoc()與array_diff()基本相同,只是它在比較時還考慮了數(shù)組的鍵,因此,只在第一個數(shù)組中出現(xiàn)而不在其他輸入數(shù)組中出現(xiàn)的鍵/值對才會被返回到結(jié)果數(shù)組中。其形式如下:$arr= array('a'= 'A', 'b'= 'B', 'c'= 'C', 'd'= 'D'); $arr1= array('a'= 'A', 'b'= 'B', 'e'= 'E'); $arr3= array_diff_assoc($arr, $arr1); echo " pre print_r($arr3); 打印結(jié)果顯示:Array [c] = C [d] = D其他有用的數(shù)組函數(shù)
返回一組隨機(jī)的鍵 array_rand()函數(shù)將返回數(shù)組中的一個或多個鍵。其形式為:$arr= array('a'= 'A', 'b'= 'B', 'c'= 'C', 'd'= 'D'); $arr1= array_rand($arr, 2); echo " pre print_r($arr1);打印結(jié)果顯示: Array [0] = c [1] = d) //每次刷新顯示的結(jié)果都不一樣對數(shù)組中的值求和
array_sum()函數(shù)將數(shù)組內(nèi)的所有值加在一起,返回最終的和,其形式如下:$arr= array('A', 32, 12, 'B'); $count= array_sum($arr); echo " pre print_r($count); 打印結(jié)果顯示:
44如果數(shù)組中包含其他數(shù)據(jù)類型(例如字符串),這些值將被忽略。劃分?jǐn)?shù)組
array_chunk()函數(shù)將數(shù)組分解為一個多維數(shù)組,這個多維數(shù)組由多個包含size個元素的數(shù)組所組成。其形式如下:$arr= array('A', 'B', 'C', 'D'); $arr1= array_chunk($arr, 2); echo " pre print_r($arr1); 打印結(jié)果顯示:
Array [0] = Array [0] = A [1] = B [1] = Array [0] = C [1] = D處理數(shù)組時可調(diào)用函數(shù)有array_filter(*array*,*callbackfunction*);array_intersect_uassoc(*array1*,*array2*,*array3*...,*myfunction*)array_intersect_ukey(*array1*,*array2*,*array3*...,*myfunction*)array_reduce(*array*,*myfunction*,*initial*)array_walk(*array*,*myfunction*,*userdata*...)……以上就是本文的全部內(nèi)容,希望對大家學(xué)習(xí)php程序設(shè)計有所幫助。PHP教程

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

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 亚洲精华液久久含羞草 | 色综合久久久久久 | 狠狠干网站 | 国产伦精品一区二区三区 | 做爰xxxⅹ性护士hd在线 | 99ri在线 | 日本一区二区在线 | 福利在线影院 | 一级做a爰片性色毛片2021 | 国产一区精品在线观看 | 国产91九色在线播放 | 久久精品亚洲精品国产欧美kt∨ | 欧美综合在线观看视频 | 亚欧美一区二区 | 91在线精品亚洲一区二区 | 国产精品亚洲欧美一级在线 | 欧美老外a级毛片 | 成人毛片100部免费观看 | 久久中文一区 | 一本色道久久99精品综合蜜臀 | 日韩一级成人 | 91精品免费在线 | 一本视频在线观看 | 狠狠操夜夜爱 | 中国嫩模一级毛片 | 99精品视频在线看 | 久久久中文| 九九热视频在线免费观看 | 欧美日韩国产成人在线观看 | 高清在线观看av | 国产 一区| 毛片免费看电影 | 国产精品无码久久久久 | 成人毛片免费播放 | 久久久久99999 | 国产资源在线观看 | 久色精品| 一区二区三区视频在线观看 | 久久亚洲精品久久国产一区二区 | 欧美a视频 | www.91在线|