是否可以将类方法别名为全局函数?
我有一个类作为PHP中gettext函数的包装器.我有一个名为_t()的函数来处理翻译.
我希望能够从我的代码中的任何地方将其称为_t(),而不必通过实例化对象($translate :: _ t())来实现,因为这看起来非常笨拙.
我想过使用命名空间给对象一个别名:
Use translations\TranslationClass as T
虽然这是一个更好的改进:T :: _ t().它仍然没有必要只需要做_t().
有没有在整个应用程序中将T :: _ t()替换为_t()?
最佳答案 您可以创建包装函数或使用create_function().
function _t() {
call_user_func_array(array('TranslationClass', '_t'), func_get_arts());
}
或者你可以动态创建一个函数:
$t = create_function('$string', 'return TranslationClass::_t($string);');
// Which would be used as:
print $t('Hello, World');