Php 在迭代时获取数组中的下一个空元素
我希望在数组中插入元素,但不覆盖任何现有元素:Php 在迭代时获取数组中的下一个空元素,php,arrays,Php,Arrays,我希望在数组中插入元素,但不覆盖任何现有元素: $to_insert = 25; $elem = 'new'; $arr = array( 5 => 'abc', 10 => 'def', 12 => 'xyz', 25 => 'dontoverwrite', 30 => 'fff', ); foreach($arr as $index => $val){ if($to_insert == $index){ // here ge
$to_insert = 25;
$elem = 'new';
$arr = array(
5 => 'abc',
10 => 'def',
12 => 'xyz',
25 => 'dontoverwrite',
30 => 'fff',
);
foreach($arr as $index => $val){
if($to_insert == $index){
// here get next free index, in this case would be 26;
$arr[$the_free_index] = $elem;
}
}
我该怎么做呢?以下代码将发现下一个索引未使用,从
$to\u insert
开始:
$to_insert = 25;
$elem = 'new';
for($i = $to_insert; ; $i++)
{
if(!isset($arr[$i]))
{
$arr[$i] = $elem;
break;
}
}
以下代码将查找未使用的下一个索引,从
$to\u insert
开始:
$to_insert = 25;
$elem = 'new';
for($i = $to_insert; ; $i++)
{
if(!isset($arr[$i]))
{
$arr[$i] = $elem;
break;
}
}
您需要一个从
$to_insert
开始的简单循环,并增加循环变量,直到找到一个值,而该值在$arr
中还没有作为键存在。因此,您可以将用于
和:
这将在$to_insert
键存在和不存在时正确插入元素
您需要一个简单的循环,它从
$to_insert
开始,并增加循环变量,直到它找到一个值,而该值在$arr
中还没有作为键存在。因此,您可以将用于
和:
这将在$to_insert
键存在和不存在时正确插入元素