Guest User

Untitled

a guest
Jan 18th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.59 KB | None | 0 0
  1. #!/usr/bin/env php
  2. <?php
  3.  
  4. $array = [
  5. 1 => 'a.b.c',
  6. 2 => 'a.b.d',
  7. 3 => 'b.c.e',
  8. 4 => 'a.e',
  9. 5 => 'a',
  10. 6 => 'c',
  11. 7 => 'a.c.e.f',
  12. 8 => 'd.f.g',
  13. 9 => 'b.c.e.f',
  14. 10 => 'a.b.c.d.f'
  15. ];
  16.  
  17. $finalArray = [];
  18.  
  19. foreach ($array as $id => $entry) {
  20. $cats = explode('.', $entry);
  21. $pointer = $finalArray;
  22. $cats = array_reverse($cats);
  23. $newValue = [$id];
  24. foreach ($cats as $cat) {
  25. $newValue = [$cat => $newValue];
  26. }
  27. $finalArray = array_merge_recursive($finalArray, $newValue);
  28. }
  29. ini_set('xdebug.var_display_max_depth', '7');
  30. var_dump($finalArray);
Add Comment
Please, Sign In to add comment