In Laravel 11.x & Laravel 12.x, the Arr::isList() method is a utility provided by the Illuminate\Support\Arr class. It is used to determine whether a given array is a list. A list is an array where the keys are sequential integers starting from 0 (e.g., [0 => ‘apple’, 1 => ‘banana’, 2 => ‘cherry’]). This is in contrast to associative arrays, where the keys are not sequential or are non-integer (e.g., [‘name’ => ‘John’, ‘age’ => 25]).
How Arr::isList() Works?
Returns true if the array is a list (sequential integer keys starting from 0).
Returns false if the array is associative or has non-sequential keys.
Example Usage
use Illuminate\Support\Arr; // Example 1: List array $listArray = ['apple', 'banana', 'cherry']; $isList = Arr::isList($listArray); // true // Example 2: Associative array $assocArray = ['name' => 'John', 'age' => 25]; $isList = Arr::isList($assocArray); // false // Example 3: Non-sequential keys $nonSequentialArray = [1 => 'apple', 2 => 'banana']; $isList = Arr::isList($nonSequentialArray); // false // Example 4: Empty array $emptyArray = []; $isList = Arr::isList($emptyArray); // true
Explanation
List Array: Keys are sequential integers starting from 0.
Example: [‘apple’, ‘banana’, ‘cherry’] → Arr::isList() returns true.
Associative Array: Keys are not sequential or are non-integer.
Example: [‘name’ => ‘John’, ‘age’ => 25] → Arr::isList() returns false.
Non-Sequential Keys: Keys are integers but not starting from 0 or not sequential.
Example: [1 => ‘apple’, 2 => ‘banana’] → Arr::isList() returns false.
Empty Array: An empty array is considered a list by default.
Example: [] → Arr::isList() returns true.