Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env php
- <?php
- $array = [
- 1 => 'a.b.c',
- 2 => 'a.b.d',
- 3 => 'b.c.e',
- 4 => 'a.e',
- 5 => 'a',
- 6 => 'c',
- 7 => 'a.c.e.f',
- 8 => 'd.f.g',
- 9 => 'b.c.e.f',
- 10 => 'a.b.c.d.f'
- ];
- $finalArray = [];
- foreach ($array as $id => $entry) {
- $cats = explode('.', $entry);
- $pointer = $finalArray;
- $cats = array_reverse($cats);
- $newValue = [$id];
- foreach ($cats as $cat) {
- $newValue = [$cat => $newValue];
- }
- $finalArray = array_merge_recursive($finalArray, $newValue);
- }
- ini_set('xdebug.var_display_max_depth', '7');
- var_dump($finalArray);
Add Comment
Please, Sign In to add comment