A. php数组如何键值对调
用array_flip.
$arr=[
1=>'老王',
2=>'老张',
3=>'老李'
];
$arr=array_flip($arr);
B. php数组如何改变KEY值
没有类似的功能函数 只能是循环一下 重新赋值了
foreach ( $array as $i=>$val ) {
$key = $val['pagetype']; //取出要作为key的字段
$array[$key] = $val; //赋值
unset($array[$i]); //删掉原有的键值
}
C. PHP在for循环里怎么给数组修改键值
array_slice($arr,1,-1);截取出来再改;
参考例子,完整写法:
$ar = array(
array(1 => 'a', 2 => 50, 3 => 60, 4 => 'long', 5 => 'zzz', 6 => 'kkk', 7 => 'ooo'),
array(1 => 'b', 2 => 60, 3 => 70, 4 => 'king', 5 => 'lll', 6 => 'ttt', 7 => 'ppp'),
array(1 => 'c', 2 => 70, 3 => 80, 4 => 'quit', 5 => 'qqq', 6 => 'xxx', 7 => 'ccc'),
);
$kname = array('StaffId', 'Wage', 'Name', 'Work', 'Type');
function foo(&$v, $k, $kname) {
$v = array_combine($kname, array_slice($v, 1, -1));
}
array_walk($ar, 'foo', $kname);
print_r($ar);
Array
(
[0] => Array
(
[StaffId] => 50
[Wage] => 60
[Name] => long
[Work] => zzz
[Type] => kkk
)
[1] => Array
(
[StaffId] => 60
[Wage] => 70
[Name] => king
[Work] => lll
[Type] => ttt
)
[2] => Array
(
[StaffId] => 70
[Wage] => 80
[Name] => quit
[Work] => qqq
[Type] => xxx
)
)
D. php中如何给一个数组集的每个数组重新赋予其键为0,1,2...
用sort()函数:sort($arr);
这个函数如果实参是一维数组则会排序,如果是多维数组只是将改变第一维的键值,其他不变。
E. php中 二维数组更换键值
代码:
$arr=array();
for($i=0;$i<4;$i++){//4可以换成数组的长度
$arr[$i]=>array(
'count'=>$count[$i],//原两个等长的数组
'sku_id'=>$sku_id[$i]
);
}
print_r($arr);//测试
F. php如何修改二维数组子数组的键值例如
<?php
//第一种,改变原数组
$keys=array('aa','bb','cc','dd','ee');
foreach($arrayas$key=>$val)
{
foreach($valas$k=>$v)
{
$array[$key][$keys[$k]]=$v;
unset($array[$key][$k]);
}
}
//第二种,生成一个新数组
$keys=array('aa','bb','cc','dd','ee');
$newArray=array();
foreach($arrayas$key=>$val)
{
foreach($valas$k=>$v)
{
$newArray[$key]=array();
$newArray[$key][$keys[$k]]=$v;
}
}
?>
G. php 键值和值互换位置,是什么方法的
使用array_flip函数可以交换数组的键值,详细用法如下:
array_flip — 交换数组中的键和值
arrayarray_flip(array$trans)
array_flip() 返回一个反转后的 array,例如 trans 中的键名变成了值,而trans 中的值成了键名。
注意 trans 中的值需要能够作为合法的键名,例如需要是integer 或者 string。如果值的类型不对将发出一个警告,并且有问题的键/值对将不会反转。
如果同一个值出现了多次,则最后一个键名将作为它的值,所有其它的都丢失了。
参数:
trans:要交换键/值对的数组。
返回值:
成功时返回交换后的数组,如果失败返回 NULL。
H. php中改变数组键值
sort($ary);
print_r($ary);
这应该是你想要的
I. php 数组键值替换问题,如何在替换键值的同时,保持数组的原序
<?php
$arr1=array("12","2","3","1","11");
$arr2=$arr1;
sort($arr2);
$arr3=array();
foreach($arr1as$value)
{
for($i=0;$i<count($arr2);$i++)
{
if($value==$arr2[$i])
{
$arr3[$i]=$value;
break;
}
}
}
print_r($arr1);
print_r($arr3);
?>
J. thinkphp 如何修改数据库键值对类型的数据
你是要将查询出的数据中为空的字段补充信息,这样可能有好几个空字段,所以理想的方法是先找出需要更新的字段,最后再一次性更新。
foreach($arr[0] as $k => $val){
$data['id'] = $arr[0]['id'];
if($val == null)
$data[$k] = '写入这句';
$m->save($data);
}