DOM ID encode PHP function

I needed to encode strings in a reversible way to be valid as XHTML IDs (letters, numbers, '-' and '_', must start with a letter). The following encode and decode functions do just that. If you are not using Drupal just replace drupal_substr() with your favourite multi-byte safe substr() function.

 * Encode a string for use as a DOM id.
 * Replaces non-alphanumeric characters with an underscore and the hex representation of the character code
 * with letters in lowercase
Syndicate content