<?php
function isIndexNormalized($array){
$recreate = [];
foreach($array as $index => $value){
$recreate[$index] = $value;
}
$recreate[] = "foo";
$array[] = "foo";
return $recreate === $array;
}
// -------
$array = [0, 1, 2, 3];
unset($array[3]);
var_dump(isIndexNormalized($array));
$array[] = "x";
var_dump([0, 1, 2, "x"] === $array, $array);
echo "\n\n\n\n"; // -------
$array = [0, 1, 2];
var_dump(isIndexNormalized($array));
$array[] = "x";
var_dump([0, 1, 2, "x"] === $array, $array);
- Output for 5.6.38, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
- bool(false)
bool(false)
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[4]=>
string(1) "x"
}
bool(true)
bool(true)
array(4) {
[0]=>
int(0)
[1]=>
int(1)
[2]=>
int(2)
[3]=>
string(1) "x"
}
preferences:
121.39 ms | 408 KiB | 5 Q