Use Drupal Unicode functions for strings

Last updated on
20 September 2016

If you are writing a module or theme, consider that it may be used on web sites around the world, some of which use languages whose characters are multi-byte Unicode, rather than single-byte ASCII or European formats. Some of the built-in PHP string processing functions do not work correctly on multi-byte text.

For that reason, Drupal provides replacements for PHP's built-in text functions. You should use these replacements when you are programming for Drupal, except where noted. The Coder module can be used to check your module for these replacement functions.

Here are the replacement functions:

For a complete list of all functions wrapping a regular PHP function in Drupal: PHP wrapper functions

If you are programming with text, you should also read the guide to handling text in a secure fashion.