2014-09-03 53 views
1

讓我通過說我通常不是PHP開發人員,並且在涉及到Symfony2時是一個完整的初學者。我對這個項目很感興趣,而且我們處於一個非常緊迫的期限。Symfony2 - 使用沒有命名空間的舊外部庫

有了這樣的方式,這裏是我的問題:

在我的公司,我們有一個內部的API,它是一個老PHP庫;它不使用名稱空間,它並不真正遵循任何標準命名約定,如PSR-0或PEAR。但是,我需要在Symfony2項目中使用它。 Symfony2顯然依賴於命名空間。如果我不更新庫以遵循「新」約定,或者我能以某種方式使用它嗎?我完全搞砸了嗎?事情是,這是一個相當龐大的圖書館,而且我們現在根本沒有時間這樣做(某人早就應該這麼做了,但那是另一個話題......)。

理論上,我可以將lib放在供應商/下,並且在我的捆綁包中使用舊的舊需求/ includes。這甚至會起作用嗎?這樣做後,我會收到憤怒Symfony/PHP開發人員的暴徒嗎?

或者,有沒有更好的方式,我不知道?

+0

完全可以做你的建議。核心Symfony 2框架庫(Twig)之一不是命名空間。唯一的是,如果你的庫有類,那麼你需要使用\ ClassName來引用它們。這裏是一個例子:http://symfony.com/doc/current/cookbook/templating/twig_extension.html – Cerad 2014-09-03 15:29:51

+0

如果圖書館只有少數面向公衆的實體,那麼你可能想編寫一個Symfony 2包作爲接口。這會讓你的應用看起來很現代。但這不是必需的。 – Cerad 2014-09-03 15:32:51

回答