array_map


工作中经常会跟数字打交道,金钱以千分位分隔符隔开,保留小数点后两位等,本文介绍下几种常用的实现方式。

1
$num = [1, 3, 4.5, 5.4, 8.11111];
  • 方式一
1
$one = array_map('number_format', $num, [2, 2, 2, 2, 2]);
  • 方式二
1
2
3
$two = array_map(function ($value) {
return number_format($value, 2);
}, $num);
  • 方式三
1
2
3
4
function test($data,$len = 4) {
return number_format($data, $len);
}
$three = array_map('test', $num);
  • 方式四
1
2
3
4
$len  = 2;
$four = array_map(function ($value) use ($len) {
return number_format($value, $len);
}, $num);
  • 方式五
1
2
3
foreach($num as $k => $v) {
$five[] = number_format($v, 2);
}