PHP學習筆記(三) 函式與陣列

2021-05-26 20:21:13 字數 3019 閱讀 5780

1.php函式定義

functionmymethod($myvar){

函式呼叫:mymethod(var);

返回值格式相同,使用return關鍵字。

2.陣列初始化:

$states["hh"]="yy";

$states[0]="yy";

$states=array("ohio"=>"oio","var2"=>"value2");

$line="name|***";

list($x,$x1)=expode("|",$line)

range函式 range(low,high,[,step]);可以用於初始化陣列。

$states=range(0,4);

$states=range(0,4,1);

陣列輸出列印:print_r(array,[,true/false]); 第二個引數為是否返回。

3.陣列操作

array_unshift(array,key,value);在陣列頭新增資料。

array_shift(array);刪除陣列頭資料。

array_push();在陣列尾新增資料。

array_pop();刪除陣列尾資料。

4.定位陣列

in_array(var,array,[,boolean])陣列搜尋if(in_array($state,$states))dosomething第三個引數為搜尋時考慮型別。

array_key_exists(key,array);搜尋key是否存在,存在返回true

array_search(var,array,[,boolean]);搜尋指定值,找到返回key,找不到返回false

array_keys(array),array_values(array);返回陣列鍵及值。

5.資料組遍歷

key(array);返回陣列當前指標值。current(array)返回指標指向的當前值。

遍歷方法:

while($key=key($states)){

echo$state[$key];

next($states);

next(array);向後移動陣列指標。prev(array)向前移動陣列指標。reset(array)重置指標指向第乙個。end(array)指標指向最後乙個元素。

array_walk(array,callbackfunction,[,userdata])

示例:

action.php如下:

<?php>

functiontest(&$value,$key){

$value=strip_tags($value);

array_walk($_post['keyword'],"test"]; 

結果是陣列中的每個值都傳遞給strip_tags()函式。這個函式將刪除值中的所有html和php標記。

6.確定陣列大小和唯一值

integer count(array,[,int mode]);返回陣列中值的總數,可選引數設定為1時將遞迴計數,多維陣列統計時較為有用。(sizeof()用法與功能相同)。

array array_count_values(array) 返回乙個鍵值對陣列,統計陣列中不同元素個數。

array array_unique(array),刪除陣列中重複元素,返回乙個由唯一值組成的陣列。

7.陣列排序

array_reverse(array,[,boolean key]) 將陣列中的順序逆序排列,但key為true時,保持鍵對映,false則鍵按原有順序排列。

array_flip(array)調換值與鍵。

sort(array ,[,int sort_flags]) 對陣列進行排序,各元素由低到高排列。該函式不返回排序的陣列,直接對當前陣列排序。sort_flags 說明排序的預設行為:

sort_number;數值排序

sort_regular;按ascii表排序。

sort_string;字串排序

此函式排序後,鍵/值關係不在保持。需要保持關係,使用asort()函式,用法相同

降序排列 rsort(),保持關係降序排列 arsort();

natsort(array);按照自然順序排列。

natcasesort();不區分大小寫按自然順序排列

ksort();按鍵排序,參考sort()用法。

krsort();按鍵降序排列。

根據使用者自定義規則排序 usort(array,function);

8.合併、拆分、接合和分解陣列

array_merge_recursive(array,array,[,array]),返回乙個合併後的陣列,如果某個鍵已經存在,則合併值為陣列。arr_merge()函式用法相同,存在相同鍵情況後面的將覆蓋前面的。

array_combine(array keys,array values);遞迴合併兩個陣列

array_slice(array,int offset,[,int length]);拆分陣列,從offset開始,到length結束,預設length,則到末尾,offset為負數,則從最後往前數。

array_splice(array,int offset,[,int length]);刪除從offset到offset+length的元素,如果預設length,則刪除到末尾。

array_intersect(array1,array2,[,array]);求陣列交集。

array_intersect_assoc(array1,array2,[,array]);與上面函式類似,求鍵/值對的交集。

array_diff(array1,array2,[,array]);求陣列差集。

array_diff_assoc(array1,array2,[,array]);求關聯陣列差集。

array_rand(array,[int num]);返回一組隨機鍵。

shuffle(array);隨機洗牌。

array_num(array);陣列求和。

array_chunk(array,int size,[,boolean keys]);分解陣列成為多維陣列。

PHP學習筆記三 函式

1 格式 funciton 函式名 引數1,引數2,引數3.2 函式命名要求 1 不能以系統函式名或關鍵字重名。2 不能以數字和特殊字元開頭,只能是大小寫英文本母和下劃線開頭。3 不能在函式名中包含空格或特殊字元。3 引數 1 可以自由定義引數的數量,沒有限制。2 帶有初始值的引數,在沒有被賦值的時...

PHP學習筆記之PHP函式(三)

認識php函式 函式引數的傳遞 1.值傳遞 傳值 函式內對引數值的改變不會影響函式外部的值 2.引用傳遞 傳址 有些情況下,可能希望在函式體內對引數的修改在函式體外也能反映 3.預設引數值 可以為引數指定預設值,在沒有提供其他值的情況下,則將預設值自動賦 函式中變數的作用域 1.區域性變數 func...

PHP 陣列函式 學習筆記

php陣列 array 函式是php的核心組成部分,支援對單維或多維陣列的操作。常用的陣列函式 1.陣列的鍵值操作函式 array keys 返回陣列中部分的或所有鍵名 重點內容 arr array a 張三 b 李四 c 王二 val1 array keys 張三 print r val1 返回結...