2013-11-22 61 views
1

我有噸線和gettext的呼叫的PHP應用程序,如_("some text")有沒有辦法重載php的_()gettext的操作

有沒有辦法重載此_(「」)操作符來執行運行時檢查?喜歡的東西:

function _($argument) { 

    $result = _($argument); // this would be the non-overloaded _() 

    /* perform some checks or logging */ 

    return $result; 
} 
+0

只要你想你不能做到這一點。 http://stackoverflow.com/questions/4697705/php-function-overloading – naththedeveloper

+0

在PHP中沒有辦法重新聲明函數。你會得到錯誤「給定名稱的函數已經存在」。你可以使用像下面的Mark這樣的命名空間,或者只是創建另一個函數。 – Stalinko

回答

4

命名空間也許是:

namespace myUnderscore; 

function _($argument) { 
    $result = \_($argument); // this would be the non-overloaded _() 
    /* perform some checks or logging */ 
    return strrev($result); 
} 

$argument = 'gazebo'; 
echo _($argument) . PHP_EOL; // call overloaded _() 

echo \_($argument) . PHP_EOL; // call non-overloaded _() 
相關問題