使用PHP中的map(函数($ data))返回2个或更多值

时间:2017-10-20 23:42:45

标签: php arrays laravel-5 algolia

我找不到方法。我使用以下Algolia选项来创建关系。

public function toSearchableArray()
{
    $array = $this->toArray();

    $array['categories'] = $this->categories->map(function ($data) {
                             return $data['name'];
                           })->toArray();

   return $array;
}

尽管我阅读了array_map的php页面,但我无法找到返回多个值的方法,例如:

function ($data) {{return $data['name']; return $data['value'] ;})->toArray(),

没有错误但没有输出。

1 个答案:

答案 0 :(得分:2)

尝试以下方法:

$array['categories'] = $this->categories->map(function ($data) {
                         return [$data['name'], $data['value']];
                       })->toArray();

您可以返回array,而不是尝试返回2 strings