没有类似的功能函数 只能是循环一下 重新赋值了
foreach ( $array as $i=$val ) {
$key = $val['pagetype']; //取出要作为key的字段
$array[$key] = $val; //赋值
unset($array[$i]); //删掉原有的键值
}
有个方法可以不使用循环,代码如下
php
$arr?=?array_combine($keys,?array_values($arr));
其中,range生成指定范围的数组,array_combine将键和值组合,形成新数组.
实际应用中,请结合原数组长度使用.
使用循环请这样做
for?($i?=?count($arr)◆1;?$i?1;?--$i)?{
$arr[$i]?=?$arr[$i-1];
unset($arr[$i]);
您的采纳就是我的动力!
这个$key跟for循环中的$key是两个概念了
比如:
print_r($arr[1]);
用foreach循环,可以得到数组中元素的key值跟value值,当然key值可以是数字,也可以是字符串啊
如果你想下一次循环,直接到$key=$key◆10的时候,首先,如果$key是字符串,◆10就会有错误
你可以:
①循环一次,将用过的元素通过php函数array_splice()或unset()删除,剩下的可以再次循环
你指的控制key值是什么意思?不太明白
PHP中不能直接修改某数组的键名,只能通过将其中的元素逐一复制到另一个新数组中,并在赋值的时候修改键名,如;
$a = array('a'='China', 'b'='America', 'c'='England');
$b[0] = $a['a'];
$b[1] = $a['b']
$a = $b;
//第一种,改变原数组
$keys?=?array('aa','bb','cc','dd','ee');
foreach($array?as?$key=$val)
{
foreach($val?as?$k=$v)
$array[$key][$keys[$k]]?=?$v;
unset($array[$key][$k]);
//第二种,生成一个新数组
$newArray?=?array();
$newArray[$key]?=?array();
$newArray[$key][$keys[$k]]?=?$v;
以上就是土嘎嘎小编为大家整理的php数组修改key的方法相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!