這篇文章給大家分享的是PHP中array_map()函數(shù)的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,下面將介紹array_map()函數(shù)的說(shuō)明、語(yǔ)法、參數(shù)、返回值、實(shí)例這些,文中示例代碼介紹的非常詳細(xì),感興趣的朋友接下來(lái)一起跟隨小編看看吧。
有時(shí)候我們想要對(duì)數(shù)組里的元素進(jìn)行改變,不過(guò)在函數(shù)的選擇上犯了難題。本篇帶來(lái)的是array_map函數(shù),對(duì)于數(shù)組中元素的值進(jìn)行調(diào)整,然后再返回新的數(shù)組,處理數(shù)組的數(shù)量上也不止一個(gè)。
1、說(shuō)明
array_map用回調(diào)函數(shù)處理數(shù)組中的各個(gè)元素。在函數(shù)中你可以改變各個(gè)元素的值,重點(diǎn)在你需要什么樣的值就返回什么樣的值,保持索引??梢砸淮涡蕴幚矶鄠€(gè)數(shù)組。但是數(shù)組的數(shù)量應(yīng)該與回調(diào)函數(shù)的參數(shù)保持一致
2、語(yǔ)法
array_map(myfunction,array1,array2,array3...)
3、參數(shù)
- myfunction 必需。用戶(hù)自定義函數(shù)的名稱(chēng),或者是 null。
- array1 必需。規(guī)定數(shù)組。
- array2 可選。規(guī)定數(shù)組。
- array3 可選。規(guī)定數(shù)組。
4、返回值
返回包含用戶(hù)自定義函數(shù)作用后的 array1 的值的數(shù)組。
5、實(shí)例
public function test_array_map(Request $request) { $aa = array('aa', 'bb'); $bb = array_map(function($item) { $item = $item . 'aa' ; return $item; }, $aa); var_dump($aa);
知識(shí)點(diǎn)擴(kuò)展:
php array_map()數(shù)組函數(shù)使用說(shuō)明
/*函數(shù)array_map()函數(shù):多數(shù)組回調(diào)函數(shù)---將回調(diào)函數(shù)作用到給定數(shù)組的單元上 * 1、語(yǔ)法:array array_map ( callback callback, array arr1 [, array ...] ) * 2、描述:返回一個(gè)數(shù)組,該數(shù)組包含了 arr1 中的所有單元經(jīng)過(guò) callback 作用過(guò)之后的 * 單元。callback 接受的參數(shù)數(shù)目應(yīng)該和傳遞給 array_map() 函數(shù)的數(shù)組數(shù)目一致。 * 3、注意事項(xiàng): * 3.1、多數(shù)組回調(diào)函數(shù)作用于一個(gè)數(shù)組時(shí),將保留原有數(shù)組的鍵名,也就是返回的數(shù)組的鍵名就是 * 作用到給定數(shù)組的鍵名 * 3.2、多數(shù)組回到函數(shù)作用于兩個(gè)或多個(gè)數(shù)組時(shí),他們的長(zhǎng)度要一致,并且將忽略原來(lái)多個(gè)數(shù)組的 * 鍵名,統(tǒng)一分配數(shù)字索引作為鍵名 */ //單個(gè)數(shù)組使用的例子 $websites=array("g"=>"google","b"=>"baidu","y"=>"yahoo"); //輸出原數(shù)組 echo "<pre>"; print_r($websites); echo "</pre>"; //定義對(duì)單個(gè)數(shù)組處理的回調(diào)函數(shù) function change_value($value){ return ucfirst($value).".com"; } $urls=array_map('change_value',$websites); echo "<pre>"; print_r($urls); echo "</pre>"; //多個(gè)數(shù)組使用的例子 $arr1=array(1,3,5,7); $arr2=array(2,4,6,8); //定義對(duì)多個(gè)數(shù)組處理的回調(diào)函數(shù) function func1($a,$b){ return $a*$b; } $results=array_map('func1',$arr1,$arr2); echo "利用回調(diào)函數(shù)對(duì)多個(gè)數(shù)組處理后,返回的結(jié)果:<br>"; echo "<pre>"; print_r($results); echo "</pre>";
關(guān)于PHP中array_map()函數(shù)的作用及用法就介紹到這,上述示例具有一定的借鑒價(jià)值,感興趣的朋友可以參考,希望能對(duì)大家有幫助,想要了解更多PHP函數(shù)的內(nèi)容,大家可以關(guān)注其它的相關(guān)文章。