Return 2 个或更多值在 PHP 中使用 map(function ($data))

Return 2 or more values using map(function ($data) in PHP

我找不到路了。我正在使用以下 Algolia 选项来创建关系。

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

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

   return $array;
}

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

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

没有错误但也没有输出。

尝试以下操作:

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

您可以 return 一个 array 而不是尝试 return 2 strings.