php - 带参数的php中的Array_map函数

标签 php arrays

我有这个

$ids = array_map(array($this, 'myarraymap'), $data['student_teacher']);

function myarraymap($item) {
    return $item['user_id'];
}

我想在我的函数中添加一个其他参数来得到类似的东西

function myarraymap($item,$item2) {
    return $item['$item2'];
}

有人可以帮助我吗?我尝试了很多东西,但没有任何效果

最佳答案

您可以使用 anonymous function并以这种方式将局部变量的值传输到您的 myarraymap 第二个参数中:

function myarraymap($item,$item2) {
    return $item[$item2];
}

$param = 'some_value';

$ids = array_map(
    function($item) use ($param) { return myarraymap($item, $param); },
    $data['student_teacher']
);

通常只在匿名函数体内传递值就足够了:

function($item) { return myarraymap($item, 'some_value'); }

从 PHP 7.4 开始,您可以使用 arrow functions (这基本上是具有更简洁语法的短匿名函数)以获得更简洁的代码:

$ids = array_map(
    fn($item) => myarraymap($item, $param),
    $data['student_teacher']
);

关于php - 带参数的php中的Array_map函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8745447/

相关文章:

php - Laravel excel maatwebsite 3.1 导入,excel 单元格中的日期列返回为未知格式数字。如何解决这个问题?

php - CodeIgniter - 从 n-2-n 关系表中获取并显示数据

javascript - 确定我的内容中是否包含搜索词数组的最快方法?

arrays - 将整个数组从 int 转换为 double 以进行一些算术运算

php - 比较mysql数据和文件夹文件

php - 为什么我的代码出现 fatal error : Uncaught exception 'DOMPDF_Exception' with message 'Frame not found in cellmap

javascript - 验证重定向是否来自特定域的最安全方法是什么?

c - 在C中乘以整数的char数组

java - 使用java使用具有大数据的数组编写json文件

java - 如何在 Java 中将 double[] 转换为 List<double[]> ?