我不知道PHP初學者是怎麼學習函 數的,但是我認為學習他一定是有目的性,它是目的驅動的,以數組函數為例!這麼多的數組函數我們該怎麼學習?其實我們只需要清楚,我們需要對數組做哪些操 作,然後把這些操作歸類,心中就有了大概的印象,然後隨著你的實踐,這些函數你就很清楚了,在這裡提醒大家的是手冊要常備!廢話不多說,數組函數一般歸為 以下幾類(看到英文別怕哦):
Outputting arrays
Creating arrays
Testing for an array
Locating array elements
Traversing arrays
Determining array size and element uniqueness
Sorting arrays
Merging, slicing, splicing, and dissecting arrays
Outputting arrays
print_r()
不熟悉這個的我就不想多說了!最基本的函數,當然要輸出數組也可是使用循環結構輸出,不過有這麼方便的輸出函數干嗎不用呢!
Creating arrays
array()
這個函數我也不想說了,這其實只能算語言結構,大家在新建數組的時候都用到過,沒用過的我只能說,兄弟,我無語了!
list()
這個函數和上面提到的array()一樣,只是個語言結構,它通過一步操作給一組變量賦值!
具體示例請查看手冊!
range();
array range ( mixed low, mixed high[, number step] )
建立一個包含指定范圍單元的數組
示例:$arr =range(0, 6);
相當於$arr =array(0, 1, 2, 3, 4, 5, 6);
一般數據按從低到高排列,如果low> high,則從高到低排列;
Testing for an array
is_array();
測試變量是否array類型,是則返回true,不是則返回false,很基本,很實用的函數!
Adding and removing array elements
array_push()
int array_push ( array &target_array,mixed var [, mixed ...] )
將一個或多個單元從末尾添加至數組!返回新數組的單元總數!
示例:
$states =array(‘Ohio’, ‘New York’);
array_push($states, ‘California’,‘Texas’);
//output: array((‘Ohio’,‘New York’ , ‘California’,‘Texas’);
array_pop();
彈出並返回數組的最後一個單元,並將數組長度減一。使用後會重置數組指針!
示例:
$states =array(‘Ohio’, ‘New York’);
$state = array_pop($states);
//output: New York
array_shift();
與array_pop類似,只不過它移出和返回的是數組的第一個值。數字鍵名將重新從零開始記數,文字鍵名則保持不變!
array_unshift();
與array_push類似,只不過是從數組頭部插入數據!數字鍵名將重新從零開始記數,文字鍵名則保持不變!
array_pad();
array array_pad ( array input, intpad_size, mixed pad_value )
用值將數組填充到指定長度!
pad_size為正,則從右側開始填補,為負,從左側開始填補,小與數組長度,則保持數組不變!示例見手冊!
Locating array elements
in_array();
檢查數組中是否存在某個值,基礎,不說了,具體見手冊!
array_keys();
array array_keys ( array input [,mixed search_value [, bool strict]] )
返回數組中的所有鍵名。如果選定search_value,則返回選定的鍵名!自PHP 5]起,可以用strict參數來進行全等比較(===)。
array_key_exists();
bool array_key_exists ( mixed key,array search )
檢查給定的鍵名或索引是否存在於數組中,存在則返回true。一些更具體的應用記得查看手冊!
array_values();
array array_values ( array input )
與array_keys()類似!返回的是數組的所有鍵值!
array_search();
mixed array_search ( mixed needle,array haystack [, bool strict] )
在 haystack中搜索 needle參數並在找到的情況下返回鍵名,否則返回FALSE。
如果needle是字符串,則比較區分大小寫!
如果strict是true,還得比較類型
如果needle在haystack中出現不止一次,則返回第一個匹配的鍵。要返回所有匹配值的鍵,應該用array_keys()加上可選參數search_value來代替!