php array_walk 對數(shù)組中的每個元素應(yīng)用用戶自定義函數(shù)詳解
php array_walk 對數(shù)組中的每個元素應(yīng)用用戶自定義函數(shù)
array_walk 使用用戶自定義函數(shù)對數(shù)組中的每個元素做回調(diào)處理
基本語法
bool array_walk ( array &$array , callable $funcname [, mixed $userdata = NULL ] )
將用戶自定義函數(shù) funcname 應(yīng)用到 array 數(shù)組中的每個單元。
array_walk() 不會受到 array 內(nèi)部數(shù)組指針的影響。 array_walk() 會遍歷整個數(shù)組而不管指針的位置。
參數(shù)介紹:
| 參數(shù) | 描述 |
|---|---|
| array | 必需。輸入的數(shù)組。 |
| funname | 必需。用戶自定義函數(shù)的名稱。典型情況下 funcname 接受兩個參數(shù)。array 參數(shù)的值作為第一個,鍵名作為第二個。如果 funcname 需要直接作用于數(shù)組中的值,則給 funcname 的第一個參數(shù)指定為引用。這樣任何對這些單元的改變也將會改變原始數(shù)組本身。 |
| userdata | 可選。規(guī)定用戶自定義函數(shù)的參數(shù)。如果提供了可選參數(shù) userdata,將被作為第三個參數(shù)傳遞給 callback funcname。 |
說明:
1.array_walk() 函數(shù)對數(shù)組中的每個元素應(yīng)用回調(diào)函數(shù)。如果成功則返回 TRUE,否則返回 FALSE。
2.典型情況下 funname接受兩個參數(shù)。array 參數(shù)的值作為第一個,鍵名作為第二個。如果提供了可選參數(shù) userdata ,將被作為第三個參數(shù)傳遞給回調(diào)函數(shù)。
3.如果 funname函數(shù)需要的參數(shù)比給出的多,則每次 array_walk() 調(diào)用 funname時都會產(chǎn)生一個 E_WARNING 級的錯誤。這些警告可以通過在 array_walk() 調(diào)用前加上 PHP 的錯誤操作符 @ 來抑制,或者用 error_reporting()。
4.如果回調(diào)函數(shù)需要直接作用于數(shù)組中的值,可以將回調(diào)函數(shù)的第一個參數(shù)指定為引用。
返回值
成功時返回 TRUE , 或者在失敗時返回 FALSE 。
實例:
<?php
$fruits = array(
"d" => "lemon",
"a" => "orange",
"b" => "banana",
"c" => "apple"
);
function test_alter(&$item1, $key, $prefix) {
$item1 = " $prefix : $item1 ";
}
function test_print($item2, $key) {
echo " $key . $item2 <br />";
}
echo "Before ...:<br />";
array_walk($fruits, 'test_print');
array_walk($fruits, 'test_alter', 'fruit');
echo "... and after:<br />";
array_walk($fruits, 'test_print');
?>
運行結(jié)果:
Before ...:
d . lemon
a . orange
b . banana
c . apple
... and after:
d . fruit : lemon
a . fruit : orange
b . fruit : banana
c . fruit : apple
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
Thinkphp 框架擴展之?dāng)?shù)據(jù)庫驅(qū)動常用方法小結(jié)
這篇文章主要介紹了Thinkphp 框架擴展之?dāng)?shù)據(jù)庫驅(qū)動常用方法,總結(jié)分析了Thinkphp數(shù)據(jù)庫驅(qū)動常用方法、功能及相關(guān)使用注意事項,需要的朋友可以參考下2020-04-04
laravel 5異常錯誤:FatalErrorException in Handler.php line 38的解決
這篇文章主要給大家介紹了關(guān)于laravel 5異常錯誤:FatalErrorException in Handler.php line 38的解決方法,文中將解決方法介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-10-10
PHP使用SWOOLE擴展實現(xiàn)定時同步 MySQL 數(shù)據(jù)
本文給大家介紹的是一次比較特殊的任務(wù),我們使用PHP SWOOLE 做一個異步的定時任務(wù)系統(tǒng),具體如何來實現(xiàn)的呢,接下來來我們好好看下吧2017-04-04
PHP上傳Excel文件導(dǎo)入數(shù)據(jù)到MySQL數(shù)據(jù)庫示例
這篇文章主要介紹了PHP上傳Excel文件導(dǎo)入數(shù)據(jù)到MySQL數(shù)據(jù)庫示例,可以將Excel的數(shù)據(jù)寫入到MySQL數(shù)據(jù)庫中,感興趣的同學(xué)可以了解一下。2016-10-10
php正則去除網(wǎng)頁中所有的html,js,css,注釋的實現(xiàn)方法
下面小編就為大家?guī)硪黄猵hp正則去除網(wǎng)頁中所有的html,js,css,注釋的實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11

