1 common.inc | _format_date_callback(array $matches = NULL, $new_langcode = NULL) |
Translates a formatted date string.
Callback for preg_replace_callback() within format_date().
Parameters
array $matches: The array of matches as found by preg_replace_callback().
string $new_langcode: Sets the internal langcode to be used. Set the langcode prior to calling preg_replace_callback().
Return value
string: The date from $matches as a translated string.
Related topics
File
- core/
includes/ common.inc, line 2541 - Common functions that many Backdrop modules will need to reference.
Code
function _format_date_callback(array $matches = NULL, $new_langcode = NULL) {
// We cache translations to avoid redundant and rather costly calls to t().
static $cache, $langcode;
if (!isset($matches)) {
$langcode = $new_langcode;
return NULL;
}
$code = $matches[1];
$string = $matches[2];
if (!isset($cache[$langcode][$code][$string])) {
$options = array(
'langcode' => $langcode,
);
if ($code == 'F') {
$options['context'] = 'Long month name';
}
if ($code == '') {
$cache[$langcode][$code][$string] = $string;
}
else {
$cache[$langcode][$code][$string] = t($string, array(), $options);
}
}
return $cache[$langcode][$code][$string];
}