php – 由另一个数组重写数组的键

我想用字符串键重写数组“foo”的数字键.该关系保存在另一个数组“bar”中.

$foo = array(
 1 => 'foo',
 2 => 'bar',
 ...
);

$bar = array(
 1 => 'abc',
 2 => 'xyz',
 ...
);

$result = array(
 'abc' => 'foo',
 'xyz' => 'bar',
 ...
);

实现这一结果的最快方法是什么?

解决方法:

如果两个数组($foo和$bar)中的键/值的顺序不同,NullPointer的示例将失败.考虑一下:

$foo = array(
    1 => 'foo',
    2 => 'bar',
);

$bar = array(
    2 => 'xyz',
    1 => 'abc',
);

如果你像以前一样运行array_combine($foo,$bar),输出将是

array(2) {
  ["foo"]=>
  string(3) "xyz"
  ["bar"]=>
  string(3) "abc"
}

但是,这个简单的循环应该有效:

$output = array();
foreach ($bar as $from => $to) {
    $output[$to] = $foo[$from];
}

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...