在PHP中,如何更正数组中缺少的键?
使用后,将删除没有重复值的数组。但是,似乎也删除了关键点,这会在具有数字索引的数组中留下间隙(尽管对于关联数组来说这很好)。如果我使用for循环进行迭代,我必须考虑缺少的索引,只需将键复制到一个新数组,但这似乎很笨拙将为数组重新编号,而不是使用for循环,听起来您应该使用foreach循环。显然,您根本不关心索引,因为您正在对它们重新编号 此循环:在PHP中,如何更正数组中缺少的键?,php,arrays,Php,Arrays,使用后,将删除没有重复值的数组。但是,似乎也删除了关键点,这会在具有数字索引的数组中留下间隙(尽管对于关联数组来说这很好)。如果我使用for循环进行迭代,我必须考虑缺少的索引,只需将键复制到一个新数组,但这似乎很笨拙将为数组重新编号,而不是使用for循环,听起来您应该使用foreach循环。显然,您根本不关心索引,因为您正在对它们重新编号 此循环: for ($i = 0; $i < $loopSize; $i++) { process($myArray[$i]); } 在我尝试使用fo
for ($i = 0; $i < $loopSize; $i++)
{
process($myArray[$i]);
}
在我尝试使用for代替foreach的少数情况下,我很快就后悔了 它确实总是可以避免的,您甚至可以使用foreach,但忽略值并使用键,几乎忘记它是foreach而不是for,但可以避免键中的任何间隙,并自动处理边界,而无需使用length/min/max函数或任何函数 前 我发现这对于并行阵列特别有用
$a = getA(); $b = getB();
foreach($a as $key=>val)
{
$sql = "INSERT INTO table (field1, field2) VALUES ($a[$key], $b[$key])";
}
哇!我读了数组函数列表,但完全没有读到。谢谢
foreach($myArray as $key=>$val)
{
myArray[$key] = myFunction(myArray[$key]);
}
$a = getA(); $b = getB();
foreach($a as $key=>val)
{
$sql = "INSERT INTO table (field1, field2) VALUES ($a[$key], $b[$key])";
}