我是kohana的新手,也相對於php。在kohana中定義全局函數
我有一個簡單的URI編碼函數,它模仿JS%100的函數,而不像PHP那樣。
我想在某些類中使用這個函數,但我不想在它們中的每一箇中定義它。
那麼,我怎樣才能定義一個全局函數在所有地方使用?
(我不想創建一個類的3行代碼的功能)
謝謝!
我是kohana的新手,也相對於php。在kohana中定義全局函數
我有一個簡單的URI編碼函數,它模仿JS%100的函數,而不像PHP那樣。
我想在某些類中使用這個函數,但我不想在它們中的每一箇中定義它。
那麼,我怎樣才能定義一個全局函數在所有地方使用?
(我不想創建一個類的3行代碼的功能)
謝謝!
重載核心URL輔助類。添加你的函數作爲一個靜態方法。
凌駕於避免良好面向對象原則的願望上。創建一個新類並創建一個靜態公共函數。不要創建古老的全球功能。
<?php
function yourFunction() {
return 'your result';
}
那怎麼樣?只需將它寫入一個總是包含在內的文件中,您就可以輕鬆前往。不要爲了自己在做OO而去創建一個靜態類,這沒有意義。
你可以把你的整體功能在你引導(APPPATH/bootstrap.php
)雖然我推薦在APPPATH/classes/url.php
延伸通過創建一個新的文件的核心URL輔助類(假設你是在Kohana的3.X):
class URL extends Kohana_URL {
public static function encode($uri)
{
// ...
}
}
它幾乎總是值得3行代碼。 Kohana專爲您設計,以覆蓋其核心課程。您的代碼將更易於維護。