我在PHP中有一个关于数组的快速问题。我需要为数组中的每个键添加几个字符,例如:
name =>标记年龄=> 23重量=> 150
需要转换为:
r_name => Mark r_age => 23 r_weight => 150
任何帮助都将不胜感激,谢谢。
答案 0 :(得分:14)
迭代数组,使用修改后的键添加新项目并删除原始项目:
foreach ($arr as $key => $val) {
$arr['r_'.$key] = $val;
unset($arr[$key]);
}
由于foreach
适用于数组的内部副本,因此不会遇到无限循环。
答案 1 :(得分:1)
答案 2 :(得分:1)
如果你可以肯定,你的数组中没有两个键$ K1,$ K2,$ K1 =“r _”。$ K2,你可以使用Gumbo给出的解决方案 - 它高效又好看。
如果你不能保证规定的条件,我宁愿用改变的密钥生成一个新的数组,然后删除/覆盖旧的数组。 这不像其他解决方案那样具有内存效率,但不会失败。
要记住的另一件事是,在PHP中取消设置有点慢。因此,取消设置数组中的许多元素可能比使用副本并删除原始文件后要慢。