You are here

public static function BetterExposedFiltersHelper::sortOptions in Better Exposed Filters 8.5

Same name and namespace in other branches
  1. 8.4 src/BetterExposedFiltersHelper.php \Drupal\better_exposed_filters\BetterExposedFiltersHelper::sortOptions()

Sort options alphabetically.

Parameters

array $options: Array of unsorted options - scalar, translatable markup or taxonomy term options.

Return value

array Alphabetically sorted array of original values.

2 calls to BetterExposedFiltersHelper::sortOptions()
BetterExposedFiltersHelperUnitTest::testSortOptions in tests/src/Unit/BetterExposedFiltersHelperUnitTest.php
Tests options are rewritten correctly.
FilterWidgetBase::processSortedOptions in src/Plugin/better_exposed_filters/filter/FilterWidgetBase.php
Sorts the options for a given form element alphabetically.

File

src/BetterExposedFiltersHelper.php, line 147

Class

BetterExposedFiltersHelper
Defines a helper class for better exposed filters.

Namespace

Drupal\better_exposed_filters

Code

public static function sortOptions(array $options) {

  // Flatten array of mixed values to a simple array of scalar values.
  $flat_options = self::flattenOptions($options, TRUE);

  // Alphabetically sort our list of concatenated values.
  asort($flat_options);

  // Now use its keys to sort the original array.
  return array_replace(array_flip(array_keys($flat_options)), $options);
}