public static function ViewExecutable::generateItemId

Generates a unique ID for an handler instance.

These handler instances are typically fields, filters, sort criteria, or arguments.

Parameters

string $requested_id: The requested ID for the handler instance.

array $existing_items: An array of existing handler instancess, keyed by their IDs.

Return value

string A unique ID. This will be equal to $requested_id if no handler instance with that ID already exists. Otherwise, it will be appended with an integer to make it unique, e.g., "{$requested_id}_1", "{$requested_id}_2", etc.

1 call to ViewExecutable::generateItemId()
ViewExecutable::addItem in drupal/core/modules/views/lib/Drupal/views/ViewExecutable.php
Adds an instance of a handler to the view.

File

drupal/core/modules/views/lib/Drupal/views/ViewExecutable.php, line 1934
Definition of Drupal\views\ViewExecutable.

Class

ViewExecutable
An object to contain all of the data to generate a view, plus the member functions to build the view query, execute the query and render the output.

Namespace

Drupal\views

Code

public static function generateItemId($requested_id, $existing_items) {
  $count = 0;
  $id = $requested_id;
  while (!empty($existing_items[$id])) {
    $id = $requested_id . '_' . ++$count;
  }
  return $id;
}