相关疑难解决方法(0)

PHP,如何轻松地将索引数组转换为关联数组

什么是最简单的转换方式

$a = array(
    array("id" => 1, "name" => "a1"),
    array("id" => 2, "name" => "a2")
);
Run Code Online (Sandbox Code Playgroud)

$b = array(
    "a1" => array("id" => 1, "name" => "a1"),
    "a2" => array("id" => 2, "name" => "a2")
);
Run Code Online (Sandbox Code Playgroud)

我期待PHP有一些函数式编程工具来做类似的事情:

$b = map($a, function($item) {
    return $item["name"];
});
Run Code Online (Sandbox Code Playgroud)

但我没找到一个.

php arrays

6
推荐指数
2
解决办法
7695
查看次数

是否可以使用较少的代码从值列中为 PHP 中的数组元素分配键?

假设我有一个元素数组,它们本身就是数组,如下所示:

$array = [
    ['foo' => 'ABC', 'bar' => 'DEF'],
    ['foo' => 'ABB', 'bar' => 'DDD'],
    ['foo' => 'BAC', 'bar' => 'EFF'],
];
Run Code Online (Sandbox Code Playgroud)

要将foo字段的值设置为数组的键,我可以这样做:

foreach ($array as $element) {
    $new_array[$element['foo']] = $element;
}
$array = $new_array;
Run Code Online (Sandbox Code Playgroud)

代码自然是微不足道的,但我一直想知道是否有内置的可以为我做同样的事情。

php arrays multidimensional-array

4
推荐指数
1
解决办法
932
查看次数

在foreach语句中定义数组键和值

我有一个mysql语句,每行返回2个值.

每次我循环这些结果,我想将它们添加到一个数组.

我想要一个值作为键,另一个值作为数组值.

我试过这个,但它似乎不起作用:

$dataarray[] = $row['id']=>$row['data'];
Run Code Online (Sandbox Code Playgroud)

php arrays

1
推荐指数
1
解决办法
71
查看次数

标签 统计

arrays ×3

php ×3

multidimensional-array ×1