根据另一个数组的值设置数组的键

发布于 2024-12-20 17:20:15 字数 720 浏览 0 评论 0原文

$array1 = array( [0] => 2 [1] => 3 [2] => 5 [3] => 6 [4] => 7 [5] => 8 [6] => 9 ) ;

$array2 = array( ( [0] => Array (...) [1] => Array (...) [2] => Array (...) ... [6] => Array (...));

它们具有相同数量的元素。我希望 array2 将 array1 的值作为键。

应该变成:

 $array2 = array( ( [2] => Array (...) [3] => Array (...) [5] => Array (...) ... [9] => Array (...));

我已经编写了这段代码,但是,我不知道为什么它只返回 array2 的一部分。

reset($array1);reset($array2);
foreach ($array2 as $k => $v) {
   unset ($array2[$k]);

   $new_key =  current($array1);
   next($array1);
   $array2[$new_key] = $v;
}
print_r($array2);

提前致谢。

$array1 = array( [0] => 2 [1] => 3 [2] => 5 [3] => 6 [4] => 7 [5] => 8 [6] => 9 ) ;

$array2 = array( ( [0] => Array (...) [1] => Array (...) [2] => Array (...) ... [6] => Array (...));

They have the same number of elements. I want the array2 to have, as keys, the values of array1.

Should become:

 $array2 = array( ( [2] => Array (...) [3] => Array (...) [5] => Array (...) ... [9] => Array (...));

I have written this code but, I dunno why it returns only a part of array2.

reset($array1);reset($array2);
foreach ($array2 as $k => $v) {
   unset ($array2[$k]);

   $new_key =  current($array1);
   next($array1);
   $array2[$new_key] = $v;
}
print_r($array2);

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

檐上三寸雪 2024-12-27 17:20:15

使用 array_combine 创建一个对象,其中键来自一个数组,值来自另一个数组。

$array_1 = array ('hello','world','stackoverflow');
$array_2 = array (
  array ('greetings'),
  array ('planet'),
  array ('websitefilledwithgeeks')
);

print_r (
  array_combine ($array_1, $array_2)
);

输出文档

    Array
(
    [hello] => Array
        (
            [0] => greetings
        )

    [world] => Array
        (
            [0] => planet
        )

    [stackoverflow] => Array
        (
            [0] => websitefilledwithgeeks
        )

)

PHP: array_combine

Use array_combine to create an object with keys from one array, and the values from another.

$array_1 = array ('hello','world','stackoverflow');
$array_2 = array (
  array ('greetings'),
  array ('planet'),
  array ('websitefilledwithgeeks')
);

print_r (
  array_combine ($array_1, $array_2)
);

output

    Array
(
    [hello] => Array
        (
            [0] => greetings
        )

    [world] => Array
        (
            [0] => planet
        )

    [stackoverflow] => Array
        (
            [0] => websitefilledwithgeeks
        )

)

Documentation of PHP: array_combine

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文