$words=array("l"=>"lemon","o"=>"orange","b"=>"banana","a"=>"apple");
//定义一个回调函数,输出数组元素
function words_print($value,$key,$prefix){
echo "$prefix:$key=>$value<br>\n";
}
//定义一个回调函数直接改变元素的值
function words_alter(&$value,$key){
$value=ucfirst($value);
$key=strtoupper(key);
}
//输出元素的值
array_walk($words,'words_print','words');
//改变元素的值
array_walk($words,'words_alter');
echo "<pre>";
print_r($words);
echo "</pre>";
类内部调用示例
class ArrayWalk {
/**
* properties:
*/
var $body_chunk = array('0'=>'Dewen', '1'=>'PHP', 2=>'Linux');
/
// VARIABLE METHODS
/
function ArrayWalk (){
}
function func_1(){
print_r($this->body_chunk);
array_walk ($this->body_chunk, array($this,'SpellStrToLower'));
print_r($this->body_chunk);
}
function SpellStrToLower (&$str){
$str = strtolower ($str);
}
}
$obj = new ArrayWalk();
echo '<PRE>';
$obj->func_1();
echo '</PRE>';