|
| 1 | +### ArrayHelpers |
| 2 | + |
| 3 | +Practical array utilities for flattening, grouping, plucking, keyed inserts, partitions, CSV conversion, padding, randomization, and more. |
| 4 | + |
| 5 | +#### Function Index |
| 6 | + |
| 7 | +- array_flatten_recursive(array $array, int $depth = 0): array |
| 8 | +- array_to_xml(array $array, string $rootElement = 'root', string $xmlVersion = '1.0', string $encoding = 'UTF-8'): string |
| 9 | +- array_shuffle_assoc(array $array): array |
| 10 | +- array_key_case(array $array, int $case = CASE_LOWER): array |
| 11 | +- array_group_by(array $array, callable|string $key): array |
| 12 | +- array_multi_search(array $array, mixed $search, bool $strict = false): array |
| 13 | +- array_pluck_recursive(array $array, string $key): array |
| 14 | +- array_random_key(array $array) |
| 15 | +- array_random_value(array $array) |
| 16 | +- array_insert_after(array $array, mixed $key, mixed $newKey, mixed $newValue): array |
| 17 | +- array_insert_before(array $array, mixed $key, mixed $newKey, mixed $newValue): array |
| 18 | +- array_first_key(array $array) |
| 19 | +- array_last_key(array $array) |
| 20 | +- array_first_value(array $array) |
| 21 | +- array_last_value(array $array) |
| 22 | +- array_partition(array $array, callable $callback): array |
| 23 | +- array_is_assoc(array $array): bool |
| 24 | +- array_is_list(array $array): bool |
| 25 | +- array_only_keys(array $array, array $keys): array |
| 26 | +- array_except_keys(array $array, array $keys): array |
| 27 | +- array_merge_recursive_distinct(array $array1, array $array2): array |
| 28 | +- array_diff_recursive(array $array1, array $array2): array |
| 29 | +- array_to_csv(array $array, string $delimiter = ',', string $enclosure = '"'): string |
| 30 | +- array_from_csv(string $csv, string $delimiter = ',', string $enclosure = '"'): array |
| 31 | +- array_split_chunks(array $array, int $size): array |
| 32 | +- array_pad_left(array $array, int $size, mixed $value = null): array |
| 33 | +- array_pad_right(array $array, int $size, mixed $value = null): array |
| 34 | +- array_to_collection(array $array): \Illuminate\Support\Collection |
| 35 | +- array_random_subset(array $array, int $count): array |
| 36 | +- array_to_object(array $array): object |
| 37 | + |
| 38 | +#### Examples |
| 39 | + |
| 40 | +```php |
| 41 | +$flat = array_flatten_recursive([[1, [2]], 3]); // [1,2,3] |
| 42 | + |
| 43 | +$groups = array_group_by([ |
| 44 | + ['id' => 1, 'role' => 'admin'], |
| 45 | + ['id' => 2, 'role' => 'user'], |
| 46 | +], 'role'); |
| 47 | +// ['admin' => [...], 'user' => [...]] |
| 48 | + |
| 49 | +$csv = array_to_csv([ |
| 50 | + ['id' => 1, 'name' => 'A'], |
| 51 | + ['id' => 2, 'name' => 'B'], |
| 52 | +]); |
| 53 | +``` |
| 54 | + |
| 55 | + |
0 commit comments