Iterates over an array and returns a flat array with duplicate keys removed.

This function also handles cases where objects are passed as array values.

Related topics

1 call to _form_options_flatten()
form_options_flatten in includes/form.inc
Allows PHP array processing of multiple select options with the same value.
1 string reference to '_form_options_flatten'
form_options_flatten in includes/form.inc
Allows PHP array processing of multiple select options with the same value.

File

includes/form.inc, line 2699
Functions for form and batch generation and processing.

Code

function _form_options_flatten($array) {
  $return =& drupal_static(__FUNCTION__);
  foreach ($array as $key => $value) {
    if (is_object($value)) {
      _form_options_flatten($value->option);
    }
    elseif (is_array($value)) {
      _form_options_flatten($value);
    }
    else {
      $return[$key] = 1;
    }
  }
  return $return;
}