Redeclare PHP function
Unfortunatly we cannot easy redeclare (override) functions in PHP. But sometimes we extreamly need this. For example we have our class to deal with gettext:
class Translate
{
public static function _($text)
{
// ... do some stuff
return $result;
}
}
And we dont want to use its huge call
Translate::_('message to translate');
We want to use shortcut like
_('message to translate');
But, ooops! PHP already has '_' function, and first our idea is "override it!". Sorry, there is no native tools to redeclare function. Some extensions save us: APD or runkit.
// use override_function
override_function('_', '$text', 'return Translate::_($text);');
// or runkit_function_redefine
runkit_function_redefine('_', '$text', 'return Translate::_($text);');
There are some alternatives: give another name to your function, for example ;-)
function t($text)
{
Translate::_($text);
}
