如何交换数组中的键和值?
我有这样的数组:
array(
0 => 'a',
1 => 'b',
2 => 'c'
);
我需要将其转换为:
array(
'a',
'b',
'c'
);
用值交换键的最快方法是什么?
I have array like:
array(
0 => 'a',
1 => 'b',
2 => 'c'
);
I need to convert it to:
array(
'a',
'b',
'c'
);
What's the fastest way to swap keys with values?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
PHP 有
array_flip
函数将所有键与其相应的值交换,但在您的情况下不需要它,因为数组是相同的。该数组有键 0、1 和 2。
PHP has the
array_flip
function which exchanges all keys with their corresponding values, but you do not need it in your case because the arrays are the same.This array has the keys 0, 1, and 2.
和
是相同的数组,第二种形式有 0,1,2 作为隐式键。如果您的数组没有数字键,您可以使用 array_values 函数来获取仅包含值的数组(带有数字隐式键)。
否则,如果您需要将键与值交换 array_flip 就是解决方案,但从你的例子来看并不清楚你想要做什么。
and
are the same array, the second form has 0,1,2 as implicit keys. If your array does not have numeric keys you can use array_values function to get an array which has only the values (with numeric implicit keys).
Otherwise if you need to swap keys with values array_flip is the solution, but from your example is not clear what you're trying to do.
使用 array_flip()。这样就可以将键与值交换。但是,您的数组保持原样就可以了。也就是说,您不需要交换它们,因为这样您的数组将变成
:
Use
array_flip()
. That will do to swap keys with values. However, your array is OK the way it is. That is, you don't need to swap them, because then your array will become:not
请参阅: array_flip
See: array_flip
$flipped_arr = array_flip($arr);
将为您做到这一点。(来源:http://php.net/manual/en/function.array-翻转.php)
$flipped_arr = array_flip($arr);
will do that for you.(source: http://php.net/manual/en/function.array-flip.php)
您需要使用
array_flip()
为此。You'll want to use
array_flip()
for that.