2010-10-26 40 views
3

我有一個問題,我有兩個第三方庫類,我必須一起擴展和使用。但兩者具有相同的命名約定,並且兩個類名最終具有相同的名稱。如何在不使用名稱空間的情況下在PHP中使用相同的命名類?

因爲我不能擴展兩個類,所以我不知道如何解決它們,如何創建一個包裝器。我不能使用PHP命名空間,因爲PHP版本只是5.2.10而不是5.3。

我有什麼選擇?

+0

他們都自動加載或包括? – stillstanding 2010-10-26 11:59:44

+0

是的,我必須使用它們兩個,我需要同步兩個第三方庫。一個是redmine,另一個是基於蛋糕。 – Pentium10 2010-10-26 12:06:33

回答

1

如果沒有名稱空間,那就麻煩了。

您唯一的選擇是通過其中一個或另一個的代碼,並更改所有類名。也許給他們兩個添加一個前綴,以明確哪一個是哪個。

1

這正是PHP命名空間打算解決的問題。 5.3之前沒有乾淨的方式來做這件事。你可以做的最好的是重命名一個或兩個,並通過庫來糾正電話。這是一個痛苦,但是,因爲它們是獨立的庫,這不應該太難。

我的其他建議是確保安裝5.3真的不可能。這是迄今爲止您的問題的最佳解決方案。

相關問題