49

我在这里测试了内联匿名函数array_map

它有效,但是当我尝试使用$user_meta时,它不起作用。

$user_meta = Array ( [interest] => Array ( [0] => Array ) [type] => 
     Array ( [0] => Array ) [user_status] => Array ( [0] => deny)
     [firstname] => Array ( [0] => ) [lastname] => Array ( [0] => B ) 
     [email] => email@cc.com ) 

$user_meta = array_map(function($a) { return $a[0]; },$user_meta);

“解析错误:语法错误,意外的 T_FUNCTION,期待 ')' 在”

这是显示错误的测试链接

4

4 回答 4

84

我希望这个能帮上忙:

$user_meta = array_map(function ($a) { return $a[0]; }, $user_meta);
于 2017-03-17T13:42:33.123 回答
16

这条线没有任何问题array_map,但它之前的一切都是错误的。那是非print_rPHP 代码的输出。比较您在发布的两个链接中定义数组的方式。

于 2013-08-01T14:25:05.377 回答
2

这不是您问题的答案,但由于您想返回每个子数组的第一个键,您可以使用array_column.

$user_meta = array_column($user_meta, 0);
于 2018-12-19T16:32:07.563 回答
1

可以稍微短一点

$user_meta = array_map(fn ($a) => $a[0], $user_meta);

但我更喜欢这种array_column方法array_map

于 2022-01-10T02:06:39.893 回答