鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 网站制作教程 > php > >

在PHP框架中使用array_map()等函数

来源:互联网 作者:佚名 时间:2018-02-28 11:00
总是会有一些比较特别的需求,就找到了这个函数。 以下摘自 官方手册 array_map() array_map -- 为数组的每个元素应用回调函数 array array_map ( callable $callback , array $array1 [, array $... ] ) array_map():返回数组,是为 array1 每个元素应用 c
  • 总是会有一些比较特别的需求,就找到了这个函数。
  • 以下摘自 官方手册 array_map()
    • array_map -- 为数组的每个元素应用回调函数
    • array array_map ( callable $callback , array $array1 [, array $... ] )
    • array_map():返回数组,是为 array1 每个元素应用 callback函数之后的数组。 callback 函数形参的数量和传给 array_map() 数组数量,两者必须一样。
    • 参数
      • callback -- 回调函数,应用到每个数组里的每个元素。
      • array1 -- 数组,遍历运行 callback 函数。
      • 数组列表,每个都遍历运行 callback 函数。
    • 返回值 -- 返回数组,包含 callback 函数处理之后 array1 的所有元素。
    • 范例
<?php
    $arr = [
        ['a' => 'aa','b' => 'bb',],
        ['c' => 'cc','d' => 'dd',],
        ['e' => 'ee','f' => 'ff',],
    ];

    function test($v){
        $v['add'] = 0;
        return $v;
    }

    $arr = array_map("test",$arr);
    print_r($arr);
?>

输出结果

Array
(
    [0] => Array
        (
            [a] => aa
            [b] => bb
            [add] => 0
        )

    [1] => Array
        (
            [c] => cc
            [d] => dd
            [add] => 0
        )

    [2] => Array
        (
            [e] => ee
            [f] => ff
            [add] => 0
        )

)
  • 框架(ThinkPHP)示例
<?php
namespace User\Controller;

use Common\Controller\ManagerController;

class DataController extends Controller
{
    public function get_data()
    {
        $arr = [
            // 数据填充
        ];
        
        $arr = array_map([$this,'_add_param'],$arr);
        dump($arr);
    } 

    private function _add_param($value){
        $value['add'] = 'xxx';
        return $value;
    }
}
网友评论
<