function drupal_clean_css_identifier

Prepares a string for use as a CSS identifier (element, class, or ID name).

http://www.w3.org/TR/CSS21/syndata.html#characters shows the syntax for valid CSS identifiers (including element names, classes, and IDs in selectors.)

Parameters

$identifier: The identifier to clean.

$filter: An array of string replacements to use on the identifier.

Return value

The cleaned identifier.

15 calls to drupal_clean_css_identifier()
drupal_html_class in drupal/core/includes/common.inc
Prepares a string for use as a valid class name.
FieldPluginBase::element_classes in drupal/core/modules/views/lib/Drupal/views/Plugin/views/field/FieldPluginBase.php
Return the class of the field.
FieldPluginBase::element_label_classes in drupal/core/modules/views/lib/Drupal/views/Plugin/views/field/FieldPluginBase.php
Return the class of the field's label.
FieldPluginBase::element_wrapper_classes in drupal/core/modules/views/lib/Drupal/views/Plugin/views/field/FieldPluginBase.php
Return the class of the field's wrapper.
FileFieldWidgetTest::testSingleValuedWidget in drupal/core/modules/file/lib/Drupal/file/Tests/FileFieldWidgetTest.php
Tests upload and remove buttons for a single-valued File field.

... See full list

1 string reference to 'drupal_clean_css_identifier'
template_preprocess_views_view_list in drupal/core/modules/views/theme/theme.inc
Display the view as an HTML list element

File

drupal/core/includes/common.inc, line 3361
Common functions that many Drupal modules will need to reference.

Code

function drupal_clean_css_identifier($identifier, $filter = array(
  ' ' => '-',
  '_' => '-',
  '/' => '-',
  '[' => '-',
  ']' => '',
)) {

  // By default, we filter using Drupal's coding standards.
  $identifier = strtr($identifier, $filter);

  // Valid characters in a CSS identifier are:
  // - the hyphen (U+002D)
  // - a-z (U+0030 - U+0039)
  // - A-Z (U+0041 - U+005A)
  // - the underscore (U+005F)
  // - 0-9 (U+0061 - U+007A)
  // - ISO 10646 characters U+00A1 and higher
  // We strip out any character not in the above list.
  $identifier = preg_replace('/[^\\x{002D}\\x{0030}-\\x{0039}\\x{0041}-\\x{005A}\\x{005F}\\x{0061}-\\x{007A}\\x{00A1}-\\x{FFFF}]/u', '', $identifier);
  return $identifier;
}