PHP編程基礎(chǔ)與實(shí)例教程第二版.ppt
-
資源ID:6347675
資源大?。?span id="cpnou5u" class="font-tahoma">1.69MB
全文頁數(shù):48頁
- 資源格式: PPT
下載積分:9.9積分
快捷下載
會(huì)員登錄下載
微信登錄下載
微信掃一掃登錄
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。
|
PHP編程基礎(chǔ)與實(shí)例教程第二版.ppt
PHP編程基礎(chǔ)與實(shí)例教程第二版PHPFundamentals Practices2ndEdition 第5章PHP數(shù)組 主講 孔祥盛 本章大綱 5 1數(shù)組的基本概念5 2一維數(shù)組的創(chuàng)建5 3多維數(shù)組5 4數(shù)組處理函數(shù)及應(yīng)用 5 1數(shù)組的基本概念 1 為什么引入數(shù)組使用標(biāo)量數(shù)據(jù)類型定義的變量只能存儲(chǔ)單個(gè) 數(shù)據(jù) 僅依靠標(biāo)量數(shù)據(jù)類型遠(yuǎn)不能解決現(xiàn)實(shí)生活中的一些常見問題 例如一個(gè)設(shè)置個(gè)人信息的頁面如圖所示 5 1數(shù)組的基本概念 2 數(shù)組的分類一維數(shù)組二維數(shù)組多維數(shù)組 5 2一維數(shù)組的創(chuàng)建 1 直接將變量聲明為數(shù)組元素一個(gè)變量聲明為一個(gè)數(shù)組元素有三種方法 第一種方法 不指定數(shù)組元素的 鍵 示例程序 characters humour 第二種方法 將數(shù)組元素的 鍵 指定為某個(gè)整數(shù)示例程序 interests 2 music 第三種方法 將數(shù)組元素的 鍵 指定為某個(gè)字符串示例程序 colors red red 例如程序createArray2 php 5 2一維數(shù)組的創(chuàng)建 2 使用array 語言結(jié)構(gòu)創(chuàng)建數(shù)組PHP提供了array 語言結(jié)構(gòu)創(chuàng)建數(shù)組 array 語言結(jié)構(gòu)接受一定數(shù)量用逗號分隔的key value參數(shù)對 這樣可以一次性地為數(shù)組添加多個(gè)元素 若key省略 則key值為整數(shù) 例如程序createArray4 php red green 3 white 5 print r colors 輸出 Array red red 0 green 3 white 4 5 5 2一維數(shù)組的創(chuàng)建 3 創(chuàng)建數(shù)組的注意事項(xiàng)1 如果數(shù)組元素中的 鍵 是一個(gè)浮點(diǎn)數(shù) 則 鍵 將被強(qiáng)制轉(zhuǎn)換為整數(shù) 例如浮點(diǎn)數(shù)8 0將被強(qiáng)制轉(zhuǎn)換為整數(shù)8 如果 鍵 是TRUE或FALSE 則 鍵 將被強(qiáng)制轉(zhuǎn)換為整數(shù)1或0 2 如果數(shù)組元素中的 鍵 是一個(gè)字符串 且該字符串完全符合整數(shù)格式時(shí) 數(shù)組元素的 鍵 將被強(qiáng)制轉(zhuǎn)換為整數(shù) 例如 9 將被強(qiáng)制轉(zhuǎn)換為整數(shù)9 3 由于數(shù)組元素中的 鍵 唯一標(biāo)識一個(gè)元素 因此數(shù)組中元素的 鍵 不能相等 使用 比較 如果兩個(gè)數(shù)組元素的 鍵 相等 鍵 對應(yīng)的 值 將被覆蓋 4 不要在array 語言結(jié)構(gòu)中使用諸如 red red 鍵值對的方式創(chuàng)建數(shù)組元素 也不要使用諸如 colors red red 的賦值語句的方式創(chuàng)建數(shù)組元素 否則程序的可讀性及運(yùn)行效率將大打折扣 5 2一維數(shù)組的創(chuàng)建 4 數(shù)組元素 值 的訪問訪問數(shù)組元素值的方法和訪問變量值的方法相同 通過指定數(shù)組名并在方括號內(nèi)指定 鍵名 的方式 訪問 數(shù)組元素的 值 使用這樣的方法訪問數(shù)組 不僅可以讀取某個(gè)數(shù)組元素的 值 還可以為數(shù)組添加數(shù)組元素以及修改數(shù)組元素的 值 并可以像訪問 變量 的方法訪問數(shù)組元素的值 PHP提供兩種變量賦值方式 傳值賦值和傳地址賦值 對于數(shù)組同樣適用 5 3二維數(shù)組 1 二維數(shù)組的創(chuàng)建二維數(shù)組的創(chuàng)建方法和一維數(shù)組的創(chuàng)建方法相同 方法一 直接將變量聲明為二維數(shù)組方法二 使用array 語言結(jié)構(gòu)創(chuàng)建二維數(shù)組 array studentNo 2010001 studentName 張三 studentSex 男 2010002 array studentNo 2010002 studentName 李四 studentSex 女 2010003 array studentNo 2010003 studentName 王五 studentSex 男 2010004 array studentNo 2010004 studentName 馬六 studentSex 女 print r students 5 3二維數(shù)組 2 二維數(shù)組元素 值 的訪問二維數(shù)組中存在兩個(gè) 鍵 因此訪問數(shù)組元素的 值 時(shí)需要指定這兩個(gè) 鍵 例如 students 2010001 studentName 對應(yīng)的值是 張三 其中第一個(gè)鍵 2010001 用于指定二維數(shù)組 students中的某一 行 第二個(gè)鍵 studentName 用于指定二維數(shù)組 students的該 行 的某一 列 只使用第一個(gè) 鍵 訪問數(shù)組時(shí) 訪問的是二維數(shù)組中的某一 行 該行是一個(gè)一維數(shù)組 例如 students 2010001 對應(yīng)的值是數(shù)組 5 4數(shù)組處理函數(shù)及應(yīng)用 1 快速創(chuàng)建數(shù)組的函數(shù)1 range 函數(shù)語法格式 arrayrange mixedstart mixedend 函數(shù)功能 快速創(chuàng)建一個(gè)從start到end范圍的數(shù)字?jǐn)?shù)組或字符數(shù)組 函數(shù)說明 如果start end 序列將從start到end 2 explode 函數(shù)語法格式 arrayexplode stringseparator stringstr 函數(shù)功能 使用指定的字符串分隔符separator分割字符串str 將分割后的字符串放到數(shù)組中 并返回該數(shù)組 5 4數(shù)組處理函數(shù)及應(yīng)用 1 快速創(chuàng)建數(shù)組的函數(shù)3 array combine 函數(shù)語法格式 arrayarray combine arraykeys arrayvalues 函數(shù)功能 創(chuàng)建一個(gè)新數(shù)組 用數(shù)組keys的值作為新數(shù)組的 鍵 數(shù)組values的值作為新數(shù)組的 值 4 array fill 函數(shù)語法格式 arrayarray fill intstart key intlength mixedvalue 函數(shù)功能 創(chuàng)建一個(gè)數(shù)組 并為該數(shù)組添加length個(gè)數(shù)組元素 數(shù)組元素的 鍵 從start key處開始遞增 每個(gè)數(shù)組元素的值為value 說明 length必須是一個(gè)大于零的數(shù)值 否則PHP會(huì)提示W(wǎng)arning警告信息 5 4數(shù)組處理函數(shù)及應(yīng)用 1 快速創(chuàng)建數(shù)組的函數(shù)5 array pad 函數(shù)語法格式arrayarray pad arrayarr intpad size mixedpad value 函數(shù)功能 array pad 函數(shù)返回?cái)?shù)組arr的一個(gè)拷貝 并用pad value將其填補(bǔ)到pad size指定的長度 如果pad size為正 則數(shù)組被填補(bǔ)到右側(cè) 如果為負(fù)則從左側(cè)開始填補(bǔ) 如果pad size的絕對值小于或等于input數(shù)組的長度則沒有任何填補(bǔ) 5 4數(shù)組處理函數(shù)及應(yīng)用 2 數(shù)組統(tǒng)計(jì)函數(shù)1 count 函數(shù)語法格式 intcount arrayarr intmode 函數(shù)功能 統(tǒng)計(jì)并計(jì)算數(shù)組arr中元素的個(gè)數(shù) 如果數(shù)組arr是多維數(shù)組 可將mode參數(shù)的值設(shè)為常量COUNT RECURSIVE 或整數(shù)1 計(jì)算數(shù)組arr中所有元素的個(gè)數(shù) mode的默認(rèn)值是0 該函數(shù)的別名函數(shù)為sizeof 2 max 函數(shù)語法格式 mixedmax arrayarr array 函數(shù)功能 統(tǒng)計(jì)并計(jì)算數(shù)組arr中元素的最大值 說明 PHP會(huì)將非數(shù)值的字符串當(dāng)成0處理 但如果這個(gè)正是最大的數(shù)值則仍然會(huì)返回一個(gè)字符串 如果多個(gè)數(shù)組元素的值為0且是最大值 函數(shù)會(huì)返回其中數(shù)值的0 如果數(shù)組元素中沒有數(shù)值的0 則返回按字母表順序最大的字符串 5 4數(shù)組處理函數(shù)及應(yīng)用 2 數(shù)組統(tǒng)計(jì)函數(shù)3 min 函數(shù)語法格式 mixedmin arrayarr array 函數(shù)功能 統(tǒng)計(jì)并計(jì)算數(shù)組arr中元素的最小值 說明 PHP會(huì)將數(shù)組arr中的字符串當(dāng)成0處理 如果字符串正是數(shù)組arr中最小的數(shù)值 則仍然會(huì)返回一個(gè)字符串 min 函數(shù)返回一個(gè)字符串時(shí) 該字符串為數(shù)組中順序靠前的字符串 4 array sum 函數(shù)語法格式 numberarray sum arrayarr 函數(shù)功能 統(tǒng)計(jì)并計(jì)算數(shù)組arr中的所有元素值的和 array sum 返回整數(shù)或浮點(diǎn)數(shù) 說明 PHP會(huì)將數(shù)組arr中的非數(shù)值類型的元素值自動(dòng)類型轉(zhuǎn)換為整數(shù)或浮點(diǎn)數(shù) 5 4數(shù)組處理函數(shù)及應(yīng)用 2 數(shù)組統(tǒng)計(jì)函數(shù)5 array product 函數(shù)語法格式 numberarray product arrayarr 函數(shù)功能 統(tǒng)計(jì)并計(jì)算數(shù)組arr中所有元素值的乘積 該函數(shù)返回整數(shù)或浮點(diǎn)數(shù) 說明 PHP會(huì)將數(shù)組arr中的非數(shù)值類型的數(shù)據(jù)自動(dòng)類型轉(zhuǎn)換為整數(shù)或浮點(diǎn)數(shù) 6 array count values 函數(shù)語法格式 arrayarray count values arrayarr 函數(shù)功能 統(tǒng)計(jì)并計(jì)算數(shù)組arr中所有元素的值出現(xiàn)的次數(shù) 5 4數(shù)組處理函數(shù)及應(yīng)用 2 數(shù)組統(tǒng)計(jì)函數(shù)實(shí)訓(xùn)1 數(shù)組的遍歷訪問數(shù)組的所有元素的過程稱為數(shù)組的遍歷 使用數(shù)組統(tǒng)計(jì)count 函數(shù)和for循環(huán)語句可以遍歷連續(xù)整數(shù) 鍵 的數(shù)組 例如程序ergodic1 php 該程序的運(yùn)行結(jié)果如圖所示 5 4數(shù)組處理函數(shù)及應(yīng)用 3 數(shù)組指針函數(shù)每一個(gè)PHP數(shù)組在創(chuàng)建之后都會(huì)自動(dòng)建立一個(gè) 內(nèi)部指針系統(tǒng) 每個(gè)元素有一個(gè) 內(nèi)部指針 pointer 指向下一個(gè)元素 并且 內(nèi)部指針系統(tǒng) 會(huì)為每一個(gè)PHP數(shù)組自動(dòng)建立一個(gè) 當(dāng)前指針 current 指向數(shù)組的第一個(gè)元素 圖5 24是程序createArray2 php產(chǎn)生的數(shù)組指針結(jié)構(gòu)圖 5 4數(shù)組處理函數(shù)及應(yīng)用 3 數(shù)組指針函數(shù)1 key 函數(shù)語法格式 mixedkey array arr 函數(shù)功能 返回?cái)?shù)組arr中 當(dāng)前指針 所指元素的 鍵 名 說明 該函數(shù)并不移動(dòng) 當(dāng)前指針 也不會(huì)修改數(shù)組arr的內(nèi)部結(jié)構(gòu) 2 current 函數(shù)語法格式 mixedcurrent array arr 函數(shù)功能 返回?cái)?shù)組arr中 當(dāng)前指針 所指元素的 值 說明 current 函數(shù)有個(gè)別名pos 該函數(shù)并不移動(dòng) 當(dāng)前指針 也不會(huì)修改數(shù)組arr的內(nèi)部結(jié)構(gòu) 5 4數(shù)組處理函數(shù)及應(yīng)用 3 數(shù)組指針函數(shù)3 next 函數(shù)語法格式 mixednext array arr 函數(shù)功能 移動(dòng)數(shù)組arr 當(dāng)前指針 current 使 當(dāng)前指針 current 指向數(shù)組arr的下一個(gè)元素 然后返回 當(dāng)前指針 current 所指的元素 值 說明 當(dāng) 當(dāng)前指針 current 指向數(shù)組的最后一個(gè)元素時(shí) 使用next 函數(shù)移動(dòng) 當(dāng)前指針 current 后 當(dāng)前指針 current 為 空 并且 當(dāng)前指針 current 指向的元素 值 為FALSE 5 4數(shù)組處理函數(shù)及應(yīng)用 3 數(shù)組指針函數(shù)4 end 函數(shù)語法格式 mixedend array arr 函數(shù)功能 移動(dòng)數(shù)組arr 當(dāng)前指針 current 使 當(dāng)前指針 current 指向數(shù)組arr最后一個(gè)元素 然后返回 當(dāng)前指針 current 所指的元素 值 5 4數(shù)組處理函數(shù)及應(yīng)用 3 數(shù)組指針函數(shù)5 prev 函數(shù)語法格式 mixedprev array arr 函數(shù)功能 移動(dòng)數(shù)組arr 當(dāng)前指針 current 使 當(dāng)前指針 current 指向數(shù)組arr上一個(gè)元素 然后返回 當(dāng)前指針 current 所指的元素 值 說明 當(dāng) 當(dāng)前指針 current 為 空 時(shí) 使用prev 函數(shù)移動(dòng) 當(dāng)前指針 current 后 當(dāng)前指針 current 還為 空 并且 當(dāng)前指針 current 指向的元素 值 為FALSE 5 4數(shù)組處理函數(shù)及應(yīng)用 3 數(shù)組指針函數(shù)6 reset 函數(shù)語法格式 mixedreset array arr 函數(shù)功能 移動(dòng)數(shù)組arr 當(dāng)前指針 current 使 當(dāng)前指針 current 指向數(shù)組arr的第一個(gè)元素 然后返回 當(dāng)前指針 current 所指的元素 值 5 4數(shù)組處理函數(shù)及應(yīng)用 3 數(shù)組指針函數(shù)7 each 函數(shù)語法格式 arrayeach array arr 函數(shù)功能 以數(shù)組形式返回 當(dāng)前指針 current 所指的元素 包括 鍵 和 值 然后移動(dòng)數(shù)組arr 當(dāng)前指針 current 使 當(dāng)前指針 指向數(shù)組arr下一個(gè)元素 說明 該函數(shù)返回的數(shù)組中共有四個(gè)元素 鍵值對 四個(gè)元素的 鍵 名分別為 0 1 key和value 鍵 名為0和key的元素值為arr 當(dāng)前指針 current 所指的元素鍵名 鍵 名為1和valuey的元素值為arr 當(dāng)前指針 current 所指的元素值 見表 5 4數(shù)組處理函數(shù)及應(yīng)用 3 數(shù)組指針函數(shù)實(shí)訓(xùn)2 非連續(xù) 鍵 的數(shù)組遍歷使用next 函數(shù)和while循環(huán)語句可以遍歷非連續(xù) 鍵 的數(shù)組 例如程序ergodic2 php 5 4數(shù)組處理函數(shù)及應(yīng)用 4 數(shù)組和變量間的轉(zhuǎn)換函數(shù)1 list 語言結(jié)構(gòu)語法格式 voidlist mixedvarname1 mixedvarname2 mixed arrayarr 函數(shù)功能 用一步操作給一組變量進(jìn)行賦值 list 語言結(jié)構(gòu)中定義變量名varname1 varname2等 變量值在數(shù)組arr中 說明 list 語言結(jié)構(gòu)僅用于數(shù)字 鍵 的數(shù)組 并要求數(shù)字 鍵 從0開始連續(xù)遞增 2 extract 函數(shù)語法格式 intextract arrayarr 函數(shù)功能 extract 函數(shù)使用數(shù)組arr定義一組變量 其中變量名為數(shù)組arr元素的鍵名 變量值為數(shù)組arr元素 鍵 對應(yīng)的值 5 4數(shù)組處理函數(shù)及應(yīng)用 4 數(shù)組和變量間的轉(zhuǎn)換函數(shù)3 compact 函數(shù)語法格式 arraycompact mixedvarname1 mixedvarname2 mixed 函數(shù)功能 compact 函數(shù)返回一個(gè)數(shù)組 數(shù)組每個(gè)元素的 鍵 名為變量名varname1 varname2 每個(gè)數(shù)組元素的 值 為變量varname1 varname2 的值 5 4數(shù)組處理函數(shù)及應(yīng)用 4 數(shù)組和變量間的轉(zhuǎn)換函數(shù)使用list 語言結(jié)構(gòu) each 函數(shù)和while循環(huán)語句可以實(shí)現(xiàn)數(shù)組的遍歷 例如程序ergodic3 php value 5 4數(shù)組處理函數(shù)及應(yīng)用 5 數(shù)組遍歷語言結(jié)構(gòu)foreach語言結(jié)構(gòu)有兩種用法 1 foreach arrayas value 使用該方法循環(huán)遍歷給定的數(shù)組array 每次循環(huán)中 當(dāng)前指針 所指元素的 值 賦給變量 value 然后移動(dòng)數(shù)組array 當(dāng)前指針 使 當(dāng)前指針 指向下一個(gè)元素 周而復(fù)始 直至數(shù)組array最后一個(gè)元素 此時(shí) 當(dāng)前指針 為空 2 foreach arrayas key value 使用該方法循環(huán)遍歷給定的數(shù)組array 每次循環(huán)中 當(dāng)前指針 所指元素的 鍵 名賦給變量 key 當(dāng)前指針 所指元素的值賦給變量 value 然后移動(dòng)數(shù)組array 當(dāng)前指針 使 當(dāng)前指針 指向下一個(gè)元素 周而復(fù)始 直至數(shù)組array最后一個(gè)元素 此時(shí) 當(dāng)前指針 為空 5 4數(shù)組處理函數(shù)及應(yīng)用 6 數(shù)組檢索函數(shù)1 array keys 函數(shù)語法格式 arrayarray keys arrayarr mixedsearchValue 函數(shù)功能 array keys 函數(shù)以數(shù)組的形式返回arr數(shù)組中的 鍵名 如果指定了可選參數(shù)searchValue 則只返回searchValue值的鍵名 否則arr數(shù)組中的所有鍵名都會(huì)被返回 說明 如果searchValue是字符串 則比較以區(qū)分大小寫的方式進(jìn)行 2 array values 函數(shù)語法格式 arrayarray values arrayarr 函數(shù)功能 array values 函數(shù)以數(shù)組的形式返回arr數(shù)組中所有的元素值 過濾掉重復(fù)的元素值 并為該數(shù)組建立連續(xù)的整數(shù) 鍵 5 4數(shù)組處理函數(shù)及應(yīng)用 6 數(shù)組檢索函數(shù)3 in array 函數(shù)語法格式 boolin array mixedsearchValue arrayarr boolstrict 函數(shù)功能 檢查數(shù)組arr中是否存在值searchValue 如果存在則返回TRUE 否則返回FALSE 如果第三個(gè)參數(shù)strict的值為TRUE 則in array 函數(shù)還會(huì)檢查數(shù)據(jù)類型是否相同 strict的默認(rèn)值為FALSE 說明 如果searchValue是字符串 則比較時(shí)區(qū)分大小寫 5 4數(shù)組處理函數(shù)及應(yīng)用 6 數(shù)組檢索函數(shù)4 array key exists 函數(shù)語法格式 boolarray key exists mixedkeyName arrayarr 函數(shù)功能 檢查數(shù)組arr中是否存在鍵名keyName 如果存在則返回TRUE 否則返回FALSE 5 4數(shù)組處理函數(shù)及應(yīng)用 6 數(shù)組檢索函數(shù)5 array search 函數(shù)語法格式 mixedarray search mixedsearchValue arrayarr boolstrict 函數(shù)功能 在數(shù)組arr中搜索給定的值searchValue 如果找到則返回對應(yīng)的鍵名 否則返回FALSE 如果第三個(gè)參數(shù)strict的值為TRUE 則array search 函數(shù)還會(huì)檢查數(shù)據(jù)類型是否相同 strict的默認(rèn)值為FALSE 說明 如果searchValue是字符串 則比較時(shí)區(qū)分大小寫 如果searchValue在arr中出現(xiàn)不止一次 則返回第一個(gè)匹配的鍵 要返回所有匹配值的鍵 應(yīng)該用array keys 函數(shù) 5 4數(shù)組處理函數(shù)及應(yīng)用 6 數(shù)組檢索函數(shù)6 array unique 函數(shù)語法格式 arrayarray unique arrayarray 函數(shù)功能 array unique 函數(shù)返回一個(gè)移除數(shù)組arr中重復(fù)的元素 值 的新數(shù)組 說明 array unique 函數(shù)保持了原有的 鍵值對 對應(yīng)關(guān)系 對每個(gè)值只保留第一個(gè)遇到的鍵名 5 4數(shù)組處理函數(shù)及應(yīng)用 7 數(shù)組排序函數(shù)1 sort 函數(shù)語法格式 boolsort array arr 函數(shù)功能 sort 函數(shù)按元素 值 的升序 先是數(shù)字 然后是標(biāo)點(diǎn)符號 最后是字母 對數(shù)組arr進(jìn)行排序 如果排序成功則返回TRUE 否則返回FALSE 說明 sort 函數(shù)為排序后的數(shù)組arr賦予新的 整數(shù) 鍵名 2 asort 函數(shù)語法格式 boolasort array arr 函數(shù)功能 asort 函數(shù)按元素 值 的升序 先是數(shù)字 然后是標(biāo)點(diǎn)符號 最后是字母 對數(shù)組arr進(jìn)行排序 如果排序成功則返回TRUE 否則返回FALSE 說明 數(shù)組arr經(jīng)asort 函數(shù)排序后 保持?jǐn)?shù)組元素原有的 鍵值對 對應(yīng)關(guān)系 5 4數(shù)組處理函數(shù)及應(yīng)用 7 數(shù)組排序函數(shù)3 rsort 函數(shù)和arsort 函數(shù)rsort 函數(shù)和arsort 函數(shù)與sort 函數(shù)和rsort 函數(shù)是一致的 不同的是rsort 函數(shù)和arsort 函數(shù)是按降序?qū)?shù)組進(jìn)行排序 4 ksort 函數(shù)語法格式 boolksort array arr 函數(shù)功能 ksort 函數(shù)對數(shù)組arr按照鍵名升序排序 并保持?jǐn)?shù)組元素原有的 鍵值對 對應(yīng)關(guān)系 如果成功則返回TRUE 否則返回FALSE 5 4數(shù)組處理函數(shù)及應(yīng)用 7 數(shù)組排序函數(shù)5 krsort 函數(shù)語法格式 boolkrsort array arr 函數(shù)功能 krsort 函數(shù)對數(shù)組arr按照鍵名降序排序 并保持?jǐn)?shù)組元素原有的 鍵值對 對應(yīng)關(guān)系 如果成功則返回TRUE 否則返回FALSE 5 4數(shù)組處理函數(shù)及應(yīng)用 7 數(shù)組排序函數(shù)6 natsort 函數(shù)語法格式 boolnatsort array arr 函數(shù)功能 用 自然排序 算法對數(shù)組arr元素 值 進(jìn)行升序排序 并保持?jǐn)?shù)組元素原有的 鍵值對 對應(yīng)關(guān)系不變 7 natcasesort 函數(shù)語法格式 boolnatcasesort array arr 函數(shù)功能 用 自然排序 算法對數(shù)組arr元素 值 進(jìn)行不區(qū)分大小寫字母的升序排序 并保持?jǐn)?shù)組元素原有的 鍵值對 對應(yīng)關(guān)系不變 5 4數(shù)組處理函數(shù)及應(yīng)用 7 數(shù)組排序函數(shù)8 shuffle 函數(shù)語法格式 boolshuffle array arr 函數(shù)功能 shuffle 函數(shù)為數(shù)組arr隨機(jī)排序 說明 shuffle 函數(shù)將為隨機(jī)排序后的數(shù)組arr賦予新的鍵名 9 array reverse 函數(shù)語法格式 arrayarray reverse arrayarr boolpreserve keys 函數(shù)功能 array reverse 函數(shù)返回一個(gè)和數(shù)組arr元素順序相反的新數(shù)組 如果preserve keys為TRUE則保持?jǐn)?shù)組元素原有的 鍵值對 對應(yīng)關(guān)系不變 5 4數(shù)組處理函數(shù)及應(yīng)用 8 數(shù)組與數(shù)據(jù)結(jié)構(gòu)1 array push 函數(shù)語法格式 intarray push array arr mixedvar1 mixedvar2 mixed 函數(shù)功能 array push 函數(shù)將arr當(dāng)成一個(gè)棧 并將參數(shù)var1 var2 分別壓入arr的末尾 2 array pop 函數(shù)語法格式 mixedarray pop array arr 函數(shù)功能 array pop 函數(shù)彈出數(shù)組arr最后一個(gè)元素 并返回該元素值 如果array為空 或者不是數(shù)組 將返回NULL 說明 使用array pop 函數(shù)后會(huì)把數(shù)組arr的 當(dāng)前指針 復(fù)位 自動(dòng)調(diào)用reset 函數(shù) 5 4數(shù)組處理函數(shù)及應(yīng)用 8 數(shù)組與數(shù)據(jù)結(jié)構(gòu)3 array unshift 函數(shù)語法格式 intarray unshift array arr mixedvar1 mixedvar2 mixed 函數(shù)功能 array unshift 函數(shù)將arr當(dāng)成一個(gè)特殊的隊(duì)列 如圖所示 并將參數(shù)var2 var1 分別插入arr的隊(duì)首 該函數(shù)返回入隊(duì)元素的個(gè)數(shù) 說明 這個(gè)特殊的隊(duì)列限定在對首插入元素 在隊(duì)首刪除元素 5 4數(shù)組處理函數(shù)及應(yīng)用 8 數(shù)組與數(shù)據(jù)結(jié)構(gòu)4 array shift 函數(shù)語法格式 mixedarray shift array arr 函數(shù)功能 array shift 函數(shù)刪除數(shù)組arr第一個(gè)元素 并返回該元素值 如果array為空 或者不是數(shù)組 將返回NULL 說明 使用array shift 函數(shù)后會(huì)把數(shù)組arr的 當(dāng)前指針 復(fù)位 自動(dòng)調(diào)用reset 函數(shù) 5 4數(shù)組處理函數(shù)及應(yīng)用 9 數(shù)組集合運(yùn)算函數(shù)1 array merge 函數(shù)語法格式 arrayarray merge arrayarr1 arrayarr2 array 函數(shù)功能 將數(shù)組arr1 arr2等合并為一個(gè)新數(shù)組 該函數(shù)返回該新數(shù)組 集合的并集運(yùn)算 多個(gè)數(shù)組中 如果元素的鍵名相同 則后面的數(shù)組的元素 值 覆蓋前面數(shù)組的元素 值 如果數(shù)組元素的鍵名是數(shù)字 后面的值將不會(huì)覆蓋原來的值 而是附加到后面 5 4數(shù)組處理函數(shù)及應(yīng)用 9 數(shù)組集合運(yùn)算函數(shù)2 array diff 函數(shù)語法格式 arrayarray diff arrayarr1 arrayarr2 array 函數(shù)功能 array diff 函數(shù)返回一個(gè)新數(shù)組 新數(shù)組中的元素 值 是所有在arr1中 但不在任何其它參數(shù)數(shù)組中的元素 值 集合的差集運(yùn)算 3 array intersect 函數(shù)語法格式 arrayarray intersect arrayarr1 arrayarr2 array 函數(shù)功能 array intersect 函數(shù)返回一個(gè)新數(shù)組 新數(shù)組中的元素 值 是即在arr1數(shù)組中 又在arr2等數(shù)組中出現(xiàn)的元素 值 集合的交集運(yùn)算 5 4數(shù)組處理函數(shù)及應(yīng)用 9 數(shù)組集合運(yùn)算函數(shù)4 array diff assoc 函數(shù)語法格式arrayarray diff assoc arrayarr1 arrayarr2 array 函數(shù)功能 array diff assoc 函數(shù)返回一個(gè)新數(shù)組 新數(shù)組中的元素是所有在arr1中 但不在任何其它參數(shù)數(shù)組中的元素 集合的差集運(yùn)算 說明 注意數(shù)組元素的鍵名也用于比較 5 4數(shù)組處理函數(shù)及應(yīng)用 9 數(shù)組集合運(yùn)算函數(shù)5 array intersect assoc 函數(shù)語法格式 arrayarray intersect assoc arrayarr1 arrayarr2 array 函數(shù)功能 array intersect assoc 函數(shù)返回一個(gè)新數(shù)組 新數(shù)組中的元素是即在arr1數(shù)組中 又在arr2等數(shù)組中出現(xiàn)的元素 集合的交集運(yùn)算 說明 注意數(shù)組元素的鍵名也用于比較 5 4數(shù)組處理函數(shù)及應(yīng)用 9 數(shù)組集合運(yùn)算函數(shù)6 array diff key 函數(shù)語法格式 arrayarray diff key arrayarr1 arrayarr2 array 函數(shù)功能 array diff key 函數(shù)返回一個(gè)新數(shù)組 新數(shù)組中的元素 鍵 是所有在arr1中 但不在任何其它參數(shù)數(shù)組中的元素 鍵 集合的差集運(yùn)算 7 array intersect key 函數(shù)語法格式 arrayarray intersect key arrayarr1 arrayarr2 array 函數(shù)功能 array intersect key 函數(shù)返回一個(gè)新數(shù)組 新數(shù)組中的元素 鍵 是即在arr1數(shù)組中 又在arr2等數(shù)組中出現(xiàn)的元素 鍵 集合的交集運(yùn)算