Как проверить, находится ли индекс ассоциативного массива в последовательности в PHP

Чтобы проверить, является ли индекс ассоциативного массива последовательным или нет в PHP, вы можете использовать следующие методы:

Метод 1: использование цикла и сравнение ключей

function checkSequential($array)
{
    $keys = array_keys($array);
    $expectedKey = reset($keys);
    foreach ($keys as $key) {
        if ($key !== $expectedKey) {
            throw new Exception("Array index is not in sequence.");
        }
        $expectedKey++;
    }
}

Метод 2. Использование функции range()

function checkSequential($array)
{
    $keys = array_keys($array);
    $expectedKeys = range(min($keys), max($keys));
    if ($keys !== $expectedKeys) {
        throw new Exception("Array index is not in sequence.");
    }
}

Метод 3: использование функции array_values()

function checkSequential($array)
{
    $keys = array_keys($array);
    $values = array_values($array);
    if ($keys !== range(0, count($values) - 1)) {
        throw new Exception("Array index is not in sequence.");
    }
}