Is it advisable to add an auto-increment field to an array to facilitate accessing the next and previous elements?

Adding an auto-increment field to an array can be a useful way to facilitate accessing the next and previous elements. By assigning a unique identifier to each element in the array, you can easily keep track of the current position and navigate to the adjacent elements.

<?php
// Sample array with auto-increment field
$items = [
    ['id' => 1, 'name' => 'Item 1'],
    ['id' => 2, 'name' => 'Item 2'],
    ['id' => 3, 'name' => 'Item 3'],
    ['id' => 4, 'name' => 'Item 4']
];

// Function to get the next element based on the current id
function getNextElement($items, $currentId) {
    foreach ($items as $key => $item) {
        if ($item['id'] == $currentId) {
            return $items[$key + 1] ?? null;
        }
    }
    return null;
}

// Function to get the previous element based on the current id
function getPreviousElement($items, $currentId) {
    foreach ($items as $key => $item) {
        if ($item['id'] == $currentId) {
            return $items[$key - 1] ?? null;
        }
    }
    return null;
}

// Example usage
$currentId = 2;
$nextElement = getNextElement($items, $currentId);
$previousElement = getPreviousElement($items, $currentId);

var_dump($nextElement);
var_dump($previousElement);
?>