2011-08-23 37 views

回答

1

使用Runkit extension可以。

但是,它通常不被認爲是一個好主意,除了用於單元測試之類的東西,你可能想要隔離你的一些功能。

對於一般用途,您不應該重寫內置函數,因爲它會讓您的代碼更難以維護,並且會使您難以調試一些問題。

此外,Runkit擴展名被標記爲'實驗',這意味着它不應該在生產系統中使用真的

3

不,但使用PHP版本> = 5.3.0,您可以使用namespacing

1

您可以嘗試runkit extension,但在生產環境中它被認爲是不好的做法。另請參見Redefining PHP function?

+0

不好的做法,危險 - 最後發佈是2006年。 –

+0

@WesleyvanOpdorp我說,在我的答案中,但它仍然是一個問題的答案。 – Fabio

+0

對不起,應該在評論開始時添加'不僅'。 –

1

真的不這樣做!即使你是這個項目的唯一開發者,並且知道你的項目不會成功,你永遠不會知道你的代碼將被使用多長時間(通常比你想象的要長得多)。如果另一位開發人員不得不深入到你的代碼中,他將會非常困難,因爲他/她不能依賴PHP本身。

更好的方法是編寫你自己的方法/函數,然後調用你想覆蓋的PHP函數。通過這種方式,開發人員可以立即看到,這不是標準的PHP函數,即使PHP將在未來的版本中允許其他參數,您也將擁有一個乾淨的解決方案。

相關問題