src/Backends/FontAwesomeBackend.php
public function getGroupedIcons()
    {
        // Answer Cached Icons (if available):
        
        if ($icons = self::cache()->get($this->getCacheKey())) {
            return $icons;
        }
        
        // Initialise:
        
        $icons = [];
        
        // Parse Icon Source Data:
        
        $data = Yaml::parse($this->getSourceData());
        
        // Build Icon Groups:
        
        if (isset($data['icons'])) {
            
            foreach ($data['icons'] as $icon) {
                
                foreach ($icon['categories'] as $category) {
                    
                    // Create Category Array:
                    
                    if (!isset($icons[$category])) {
                        $icons[$category] = [];
                    }
                    
                    // Create Icon Element:
                    
                    $icons[$category][$icon['id']] = [
                        'name' => $icon['name'],
                        'unicode' => $icon['unicode']
                    ];
                    
                }
                
            }
            
        }
        
        // Sort Icons by Group:
        
        ksort($icons);
        
        // Sort Icon Groups by Name:
        
        foreach ($icons as &$group) {
            uasort($group, function ($a, $b) {
                return strcasecmp($a['name'], $b['name']);
            });
        }
        
        // Store Icons in Cache:
        
        self::cache()->set($this->getCacheKey(), $icons);
        
        // Answer Grouped Icons:
        
        return $icons;
    }
public function getGroupedIcons()
    {
        // Answer Cached Icons (if available):
        
        if ($icons = self::cache()->get($this->getCacheKey())) {
            return $icons;
        }
        
        // Initialise:
        
        $icons = [];
        
        // Parse Icon Source Data:
        
        $data = Yaml::parse($this->getSourceData());
        
        // Build Icon Groups:
        
        if (isset($data['icons'])) {
            
            foreach ($data['icons'] as $icon) {
                
                foreach ($icon['categories'] as $category) {
                    
                    // Create Category Array:
                    
                    if (!isset($icons[$category])) {
                        $icons[$category] = [];
                    }
                    
                    // Create Icon Element:
                    
                    $icons[$category][$icon['id']] = [
                        'name' => $icon['name'],
                        'unicode' => $icon['unicode']
                    ];
                    
                }
                
            }
            
        }
        
        // Sort Icons by Group:
        
        ksort($icons);
        
        // Sort Icon Groups by Name:
        
        foreach ($icons as &$group) {
            uasort($group, function ($a, $b) {
                return strcasecmp($a['name'], $b['name']);
            });
        }
        
        // Store Icons in Cache:
        
        self::cache()->set($this->getCacheKey(), $icons);
        
        // Answer Grouped Icons:
        
        return $icons;
    }
public function getGroupedIcons ( ) { // Answer Cached Icons (if available): if ( $ icons = self :: cache ( ) -> get ( $ this -> getCacheKey ( ) ) ) { return $ icons ; } // Initialise: $ icons = [ ] ; // Parse Icon Source Data: $ data = Yaml :: parse ( $ this -> getSourceData ( ) ) ; // Build Icon Groups: if ( isset ( $ data [ 'icons' ] ) ) { foreach ( $ data [ 'icons' ] as $ icon ) { foreach ( $ icon [ 'categories' ] as $ category ) { // Create Category Array: if ( ! isset ( $ icons [ $ category ] ) ) { $ icons [ $ category ] = [ ] ; } // Create Icon Element: $ icons [ $ category ] [ $ icon [ 'id' ] ] = [ 'name' => $ icon [ 'name' ] , 'unicode' => $ icon [ 'unicode' ] ] ; } } } // Sort Icons by Group: ksort ( $ icons ) ; // Sort Icon Groups by Name: foreach ( $ icons as & $ group ) { uasort ( $ group , function ( $ a , $ b ) { return strcasecmp ( $ a [ 'name' ] , $ b [ 'name' ] ) ; } ) ; } // Store Icons in Cache: self :: cache ( ) -> set ( $ this -> getCacheKey ( ) , $ icons ) ; // Answer Grouped Icons: return $ icons ; }
Answers an array of icons grouped into their respective categories.

@return array
Answers an array of icons grouped into their respective categories .