You are here

private function RequestTestBase::nestedKsort in OpenAPI 8.2

Sorts a nested array with ksort().

Parameters

array $array: The nested array to sort.

1 call to RequestTestBase::nestedKsort()
RequestTestBase::requestOpenApiJson in tests/src/Functional/RequestTestBase.php
Makes OpenAPI request and checks the response.

File

tests/src/Functional/RequestTestBase.php, line 398

Class

RequestTestBase
Base tests for requests on OpenAPI routes.

Namespace

Drupal\Tests\openapi\Functional

Code

private function nestedKsort(array &$array) {
  if ($this
    ->isAssocArray($array)) {
    ksort($array);
  }
  else {
    usort($array, function ($a, $b) {
      if (isset($a['name']) && isset($b['name'])) {
        return strcmp($a['name'], $b['name']);
      }
      return -1;
    });
  }
  foreach ($array as &$item) {
    if (is_array($item)) {
      $this
        ->nestedKsort($item);
    }
  }
}