怎么在php中利用array_walk 對(duì)數(shù)組中的元素自定義函數(shù)?針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。
我們提供的服務(wù)有:網(wǎng)站制作、做網(wǎng)站、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、禹州ssl等。為近千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的禹州網(wǎng)站制作公司php array_walk 對(duì)數(shù)組中的每個(gè)元素應(yīng)用用戶自定義函數(shù)
array_walk 使用用戶自定義函數(shù)對(duì)數(shù)組中的每個(gè)元素做回調(diào)處理
基本語法
bool array_walk ( array &$array , callable $funcname [, mixed $userdata = NULL ] )
將用戶自定義函數(shù) funcname 應(yīng)用到 array 數(shù)組中的每個(gè)單元。
array_walk() 不會(huì)受到 array 內(nèi)部數(shù)組指針的影響。 array_walk() 會(huì)遍歷整個(gè)數(shù)組而不管指針的位置。
參數(shù)介紹:
參數(shù) | 描述 |
---|---|
array | 必需。輸入的數(shù)組。 |
funname | 必需。用戶自定義函數(shù)的名稱。典型情況下 funcname 接受兩個(gè)參數(shù)。array 參數(shù)的值作為第一個(gè),鍵名作為第二個(gè)。如果 funcname 需要直接作用于數(shù)組中的值,則給 funcname 的第一個(gè)參數(shù)指定為引用。這樣任何對(duì)這些單元的改變也將會(huì)改變?cè)紨?shù)組本身。 |
userdata | 可選。規(guī)定用戶自定義函數(shù)的參數(shù)。如果提供了可選參數(shù) userdata,將被作為第三個(gè)參數(shù)傳遞給 callback funcname。 |
說明:
1.array_walk() 函數(shù)對(duì)數(shù)組中的每個(gè)元素應(yīng)用回調(diào)函數(shù)。如果成功則返回 TRUE,否則返回 FALSE。
2.典型情況下 funname接受兩個(gè)參數(shù)。array 參數(shù)的值作為第一個(gè),鍵名作為第二個(gè)。如果提供了可選參數(shù) userdata ,將被作為第三個(gè)參數(shù)傳遞給回調(diào)函數(shù)。
3.如果 funname函數(shù)需要的參數(shù)比給出的多,則每次 array_walk() 調(diào)用 funname時(shí)都會(huì)產(chǎn)生一個(gè) E_WARNING 級(jí)的錯(cuò)誤。這些警告可以通過在 array_walk() 調(diào)用前加上 PHP 的錯(cuò)誤操作符 @ 來抑制,或者用 error_reporting()。
4.如果回調(diào)函數(shù)需要直接作用于數(shù)組中的值,可以將回調(diào)函數(shù)的第一個(gè)參數(shù)指定為引用。
返回值
成功時(shí)返回 TRUE , 或者在失敗時(shí)返回 FALSE 。
實(shí)例:
"lemon", "a" => "orange", "b" => "banana", "c" => "apple" ); function test_alter(&$item1, $key, $prefix) { $item1 = " $prefix : $item1 "; } function test_print($item2, $key) { echo " $key . $item2
"; } echo "Before ...:
"; array_walk($fruits, 'test_print'); array_walk($fruits, 'test_alter', 'fruit'); echo "... and after:
"; array_walk($fruits, 'test_print'); ?>
關(guān)于怎么在php中利用array_walk 對(duì)數(shù)組中的元素自定義函數(shù)問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。