array_map用法:
array_map("函数名",$arr); //遍历(foreach)数组,数组的每个元素都执行"函数名"的函数。并返回$arr。
例如:(数组)批量实体转义
/*$new_arr = array_map(function($val1){ return $val1;
},$data);
var_dump($new_arr);*/
<?php
//(数组)批量实体转义
function deepspecialchars($data){
if (empty($data)) {
return $data;
}
//中高级程序员的写法
return is_array($data) ? array_map('deepspecialchars',$data) : htmlspecialchars($data);
/*
//初级程序员的写法
if (is_array($data)) {
//数组 array('cat_id'=>1,'cat_name'=>'服装')
foreach ($data as $k => $v){
$data[$k] = deepspecialchars($v);
}
return $data;
} else {
//单个变量
return htmlspecialchars($data);
}
*/
}
// 高级写法:
function deepspecialchars($data)
{
if (empty($data)) {
return $data;
}
//中高级程序员的写法
return is_array($data) ? array_map('deepspecialchars', $data) : htmlspecialchars($data);
}
$data = array('cat_id'=>1,'cat_name'=>'服装7');
var_dump(deepspecialchars($data));
?>