php:通过在foreach中给数字重命名重复的键 [英] php: rename duplicate keys by giving number in foreach
本文介绍了php:通过在foreach中给数字重命名重复的键的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个表单数据和数据数组,如下所示:
i have a form data and the data's array like this:
$datas=array("x-1","y-2","y-2","y-3","t-1");
我的foreach循环:
my foreach loop:
foreach($datas as $x => $data){
$data=explode("-",$data);
if($data[0]==$data[0]+1){$n=1;}else{$n=0;}
$keys[$x]=$data[0].$n++;
$vals[$x]=$data[1];
}
我无法编写真实的代码,我认为我的第三行是错误的(if($ data [0] = $ data [0] +1){$ n ="1";} else {$ n = ";}) 因此,我想通过给出数字来重命名重复的键.我的输出应该是这样的:
i couldn't write the true code, my 3rd line is wrong i think (if($data[0]=$data[0]+1){$n="1";}else{$n="";}) so, i wanna rename the duplicate keys by giving number. my output should be like this:
x=1 y1=1 y2=2 y3=2 t1=1
推荐答案
尝试
$datas=array("x-1","y-2","y-2","y-3","t-1");
$i=0;
$n=1;
foreach($datas as $x => $data){
$data=explode("-",$data);
$data2=explode("-",$datas[$i+1]);
if($data[0]==$data2[0])
{
$keys[$x]=$data[0].$n;
$n=$n+1;
}
else
{
$keys[$x]=$data[0].$n;
$n=0;
}
$vals[$x]=$data[1];
$i++;
}
这篇关于php:通过在foreach中给数字重命名重复的键的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文