function _locale_import_parse_plural_forms
_locale_import_parse_plural_forms($pluralforms, $filepath)
Parses a Plural-Forms entry from a Gettext Portable Object file header
Parameters
$pluralforms: A string containing the Plural-Forms entry.
$filepath: A string containing the filepath.
Return value
An array containing the number of plurals and a formula in PHP for computing the plural form.
Related topics
File
- includes/locale.inc, line 1239
- Administration functions for locale.module.
Code
function _locale_import_parse_plural_forms($pluralforms, $filepath) { // First, delete all whitespace $pluralforms = strtr($pluralforms, array(" " => "", "\t" => "")); // Select the parts that define nplurals and plural $nplurals = strstr($pluralforms, "nplurals="); if (strpos($nplurals, ";")) { $nplurals = substr($nplurals, 9, strpos($nplurals, ";") - 9); } else { return FALSE; } $plural = strstr($pluralforms, "plural="); if (strpos($plural, ";")) { $plural = substr($plural, 7, strpos($plural, ";") - 7); } else { return FALSE; } // Get PHP version of the plural formula $plural = _locale_import_parse_arithmetic($plural); if ($plural !== FALSE) { return array($nplurals, $plural); } else { drupal_set_message(t('The translation file %filepath contains an error: the plural formula could not be parsed.', array('%filepath' => $filepath)), 'error'); return FALSE; } }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/includes!locale.inc/function/_locale_import_parse_plural_forms/7.x