講稿課件-8php數(shù)組名20-202v2.0_第1頁
講稿課件-8php數(shù)組名20-202v2.0_第2頁
講稿課件-8php數(shù)組名20-202v2.0_第3頁
講稿課件-8php數(shù)組名20-202v2.0_第4頁
講稿課件-8php數(shù)組名20-202v2.0_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

PHP數(shù)組名甘繁

2011-2012

v2.0后盾網(wǎng)人人做后盾基礎(chǔ)知識后盾網(wǎng)人人做后盾數(shù)組是在程序設(shè)計中,為了處理方便,把若干變量按有序的形式組織起來的一種形式。這些按序排列的同類數(shù)據(jù)元素的集合稱為數(shù)組。一個數(shù)組可以分解為多個數(shù)組元素,這些數(shù)組元素可以是基本數(shù)據(jù)類型或是構(gòu)造類型。因此按數(shù)組元素的類型不同,數(shù)組又可分為數(shù)值數(shù)組、字符數(shù)組等各種類別。所謂的數(shù)組下標(biāo)可以視為資料內(nèi)容在此數(shù)組中的識別名稱,通常被稱為數(shù)組下標(biāo)。當(dāng)索引值為數(shù)值時,也代表此資料內(nèi)容在數(shù)組中的 位置。數(shù)組中有幾個索引值就被稱為幾維數(shù)組。數(shù)組分類:在PHP中有兩種數(shù)組:索引數(shù)組和關(guān)聯(lián)數(shù)組。索引(indexed)數(shù)組的索引值是整數(shù),以0開始。當(dāng)通過位置來標(biāo)識東西時用索引數(shù)組。關(guān)聯(lián)(associative)數(shù)組以字符串做為索引值,關(guān)聯(lián)數(shù)組更像操作表。索引值為列名,用于 列的數(shù)據(jù)?;A(chǔ)知識后盾網(wǎng)人人做后盾數(shù)組常用的賦值方式由于

PHP是屬于弱類型數(shù)據(jù),因此源代碼中的數(shù)組并不需要經(jīng)過特別的 操作,直接將一組數(shù)值指定給某一數(shù)組元素即可。一般情況下數(shù)組的賦值有兩種方式:直接賦值方式如:$a[0]=‘$a[1]=‘’;’;使用array函數(shù)如:$a=array(““,””);后盾網(wǎng)人人做后盾一維數(shù)組一維數(shù)組數(shù)組中索引值(下標(biāo))只有一個的數(shù)組稱為一維數(shù)組。在數(shù)組中這是最簡單的,也是最常用的了。直接賦值格式:$數(shù)組變量名[索引值]=資料內(nèi)容其中索引值(下標(biāo))可以是一個字符串或一個整數(shù)。等價于整數(shù)(不以0開頭)的字符串值被當(dāng)作整數(shù)對待。因此,數(shù)組$array[3]與$array[‘3’]是相同的元素。但是$array[‘03’]

的另外不同的元素。后盾網(wǎng)人人做后盾后盾網(wǎng)人人做后盾<?php$a=array(1,2,3,4,5,6);$b=array("one",

"two",

"three");$c=array(0=>"aaa",1=>"bbb",2=>"ccc");$d=array("aaa",6=>"bbb","ccc");$e=array("name"=>"zhang",

"age"=>20);?>二維數(shù)組:$arr

=

array(0=>array(1,2),1=>array("a","b"));$arr[2]=array("bbs","web");二維數(shù)組后盾網(wǎng)人人做后盾結(jié)構(gòu)控制后盾網(wǎng)人人做后盾foreach

僅能用于數(shù)組,當(dāng)試圖將其用于其它數(shù)據(jù)類型或者一個未初始化的變量時會產(chǎn)生錯誤。有兩種語法,第二種比較次要但卻是第一種的有用的擴(kuò)展。foreach

(array_expression

as

$value)statementforeach

(array_expression

as

$key

=>

$value)statementeach返回數(shù)組中當(dāng)前的鍵/值對并將數(shù)組指針向前移動一步array

each

(

array

&$array

)

返回array

數(shù)組中當(dāng)前指針位置的鍵/值對并向前移動數(shù)組指針。鍵值對被返回為四個單元的數(shù)組,鍵名為0,1,key

和value。單

元0

和key

包含有數(shù)組單元的鍵名,1

和value

包含有數(shù)據(jù)。如果?指針越過了數(shù)組的末端,則each()返回FALSE。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾list把數(shù)組中的值賦給一些變量void

list

(

mixed

$varname

,

mixed

$...

)像array()一樣,這不是真正的函數(shù),而是語言結(jié)構(gòu)。list()用一步操作給一組變量進(jìn)行賦值。注:list()僅能用于數(shù)字索引的數(shù)組并假定數(shù)字索引從0

開始。key關(guān)聯(lián)數(shù)組中取得鍵名mixed

key

(

array

&$array)key()返回數(shù)組中當(dāng)前單元的鍵名current返回數(shù)組中的當(dāng)前單元mixed

current

(

array

&$array

)每個數(shù)組中都有一個 的指針指向它“當(dāng)前的”單元,初始指向到數(shù)組中的第一個單元?數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾next將數(shù)組中的 指針向前移動一位mixed

next

(

array

&$array

)prev將數(shù)組的

指針倒回一位(

array

&$array

)mixed

prevend將數(shù)組的 指針指向最后一個單元mixed

end

(

array

&$array

)reset將數(shù)組的

指針指向第一個單元mixed

reset

(

array

&$array

)數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾count計算數(shù)組中的單元數(shù)目或?qū)ο笾械膶傩詡€數(shù)int

count

(

mixed

$var

[,

int

$mode

]

)返回var

中的單元數(shù)目,通常是一個array,任何其它類型都只有一個單元。?對于對象,如果安裝了SPL,可以通過實現(xiàn)Countable

接口來調(diào)用

count()。該接口只有一個方法count(),此方法返回count()函數(shù)的返回值。?如果var

不是數(shù)組類型或者實現(xiàn)了Countable

接口的對象,將返回1,有一個例外,如果var

是NULL

則結(jié)果是0。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾in_array檢查數(shù)組中是否存在某個值如果第三個參數(shù)strict

的值為TRUE

則in_array()函數(shù)還會檢查needle

的類型是否和haystack

中的相同in_array

(

mixed

$needle

,

array

$haystack

[,

bool

$strict

]

)數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_search在數(shù)組中搜索給定的值,如果成功則返回相應(yīng)的鍵名?array_search

(

mixed

$needle

,

array

$haystack

[,

bool

$strict

]

)數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_key_exists檢查給定的鍵名或索引是否存在于數(shù)組中array_key_exists

(

mixed

$key

,

array

$search

)數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_filter用回調(diào)函數(shù)過濾數(shù)組中的單元?array

array_filter

(

array

$input

[,

callback

$callback

]

)array_filter()依次將input

數(shù)組中的每個值傳遞到callback

函數(shù)。如果callback

函數(shù)返回TRUE,則input

數(shù)組的當(dāng)前值會被包含在返回的結(jié)果數(shù)組中。數(shù)組的鍵名保留不變數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_walk對數(shù)組中的每個成員應(yīng)用用戶函數(shù)?bool

array_walk

(

array

&$array

,

callback

$$userdata

]

)ame

[,

mixed成功時返回TRUE,或者在失敗時返回FALSE.

將用戶自定義函數(shù)

ame

應(yīng)用到

array

數(shù)組中的每個單元。典型情況下

ame

接受兩個參數(shù)。array

參數(shù)的值作為第一個,鍵名作為第二個。如果提供了可選參數(shù)userdata,將被作為第三個參數(shù)傳遞給

callback ame。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_map將回調(diào)函數(shù)作用到給定數(shù)組的單元上array

array_map

(

callback

$callback

,

array

$arr1

[,

array

$...

]

)

array_map()返回一個數(shù)組,該數(shù)組包含了arr1

中的所有單元經(jīng)過callback

作用過之后的單元。callback

接受的參數(shù)數(shù)目應(yīng)該和傳遞給array_map()函數(shù)的數(shù)組數(shù)目一致。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾extract從數(shù)組中將變量導(dǎo)入到當(dāng)前的符號表?int

extract

(

array

$var_array

[,

int

$extract_type

[,

string

$prefix

]]

)?本函數(shù)用來將變量從數(shù)組中導(dǎo)入到當(dāng)前的符號表中。接受結(jié)合數(shù)組var_array

作為參數(shù)并將鍵名當(dāng)作變量名,值作為變量的值。對每個鍵/值對都會在當(dāng)前的符號表中建立變量,并受到

extract_type

和prefix

參數(shù)的影響。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾compact建立一個數(shù)組,包括變量名和它們的值array

compact

(

mixed

$varname

[,

mixed

$...

]

)?compact()

接受可變的參數(shù)數(shù)目。每個參數(shù)可以是一個包括變量名的字符串或者是一個包含變量名的數(shù)組,該數(shù)組中還可以包含其它單元內(nèi)容為變量名的數(shù)組。array_chunk將一個數(shù)組分割成多個array

array_chunk

(

array

$input

,

int

$size

[,

bool$preserve_keys

]

)?array_chunk()將一個數(shù)組分割成多個數(shù)組,其中每個數(shù)組的單元數(shù)目由size

決定。最后一個數(shù)組的單元數(shù)目可能會少幾個。得到的數(shù)組是一個數(shù)組中的單元,其索引從零開始。將可選參數(shù)preserve_keys

設(shè)為TRUE,可以使PHP

保留輸入數(shù)組中原來的鍵名。如果你指定了FALSE,那每個結(jié)果數(shù)組將用從零開始的新數(shù)字索引。默認(rèn)值是FALSE。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_push將一個或多個單元壓入數(shù)組的末尾(入棧)int

array_push

(

array

&$array

,

mixed

$var

[,

mixed

$...

]

)array_push()將array

當(dāng)成一個棧,并將傳入的變量壓入array

的末尾。array

的長度將根據(jù)入棧變量的數(shù)目增加。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_pop將數(shù)組最后一個單元彈出(出棧)mixed

array_pop

(

array

&$array

)array_pop()彈出并返回array

數(shù)組的最后一個單元,并將數(shù)組array

的長度減一。如果array

為空(或者不是數(shù)組)將返回NULL。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_shift將數(shù)組開頭的單元移出數(shù)組mixed

array_shift

(

array

&$array

)

array_shift()

array

的第一個單元移出并作為結(jié)果返回,將array

的長度減一并將所有其它單元向前移動一位。所有的數(shù)字鍵名將改為從零開始計數(shù),文字鍵名將不變。如果

array

為空(或者不是數(shù)組),則返回

NULL。array_unshift?在數(shù)組開頭 一個或多個單元int

array_unshift

(

array

&$array

,

mixed

$var

[,

mixed

$...

]

)array_unshift()

將傳入的單元 到

array

數(shù)組的開頭。注意單元是作為整體 入的,因此傳入單元將保持同樣的順序。所有的數(shù)值鍵名將修改為從零開始重新計數(shù),所有的文字鍵名保持不變。?返回array

數(shù)組新的單元數(shù)目。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_keys返回數(shù)組中所有的鍵名array

array_keys

(

array

$input

[,

mixed

$search_value

[,

bool$strict

]]

)array_keys()返回input

數(shù)組中的數(shù)字或者字符串的鍵名。

如果指定了可選參數(shù)search_value,則只返回該值的鍵名。否則

input

數(shù)組中的所有鍵名都會被返回。自PHP

5

起,可以用strict參數(shù)來進(jìn)行全等比較(===)。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_values返回數(shù)組中所有的值array

array_values

(

array

$input

)array_values()返回input

數(shù)組中所有的值并給其建立數(shù)字索引。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_sum計算數(shù)組中所有值的和number

array_sum

(

array

$array

)array_sum()

將數(shù)組中的所有值的和以整數(shù)或浮點數(shù)的結(jié)果返回。array_merge合并一個或多個數(shù)組array

array_merge

(

array

$array1

[,

array

$array2

[,

array

$...

]]

)array_merge()

將一個或多個數(shù)組的單元合并起來,一個數(shù)組中的值附加

一個數(shù)組的后面。返回作為結(jié)果的數(shù)組。??如果輸入的數(shù)組中有相同的字符串鍵名,則該鍵名后面的值將覆蓋前一個值。然而,如果數(shù)組包含數(shù)字鍵名,后面的值將不會覆蓋原來的值,而是附加到后面。如果只給了一個數(shù)組并且該數(shù)組是數(shù)字索引的,則鍵名會以連續(xù)方式重新索引。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾range建立一個包含指定范圍單元的數(shù)組array

range

(

mixed

$low

,

mixed

$high

[,

number

$step

]

)range()返回數(shù)組中從low

到high

的單元,包括它們本身。如果low>high,則序列將從high

到low。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_unique移除數(shù)組中重復(fù)的值array

array_unique

(

array

$array

)array_unique()接受array

作為輸入并返回沒有重復(fù)值的新數(shù)組。?注意鍵名保留不變。array_unique()

先將值作為字符串排序,然后對每個值只保留第一個遇到的鍵名,接著忽略所有后面的鍵名。這并不意味著在未排序的array

中同一個值的第一個出現(xiàn)的鍵名會被保留。數(shù)組操作函數(shù)后盾網(wǎng)人人做后盾array_rand從數(shù)組中隨機(jī)取出一個或多個單元?mixed

array_rand

(

array

$input

[,

int

$num_req

]

)array_rand()在你想從數(shù)組中取出一個或多個隨機(jī)的單元時相當(dāng)有用。它接受input

作為輸入數(shù)組和一個可選的參數(shù)num_req,指明

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論