2014-03-03 53 views
0

我正在一個網站,Laravel 4 3種語言支持(英語,法語,ES),XML在Laravel本地化4

我需要本地化的文件容易編輯由沒有誰的用戶PHP技能,但知道XML。

我的XML文件是這樣的:

<data> 
    <menu> 
     <home>Home</home> 
     <contact>Contact</contact> 
    </menu> 
</data> 

我想自動解析這個XML文件並把它作爲源定位。因爲這是我與Laravel的第一個項目,有什麼建議嗎?我知道如何解析XML,但不知道如何告訴Laravel使用它作爲本地化資源。

+1

如果你看看Laravel如何在[服務提供商](https://github.com/laravel/framework/blob/master/src/Illuminate/Translation/TranslationServiceProvider.php)中設置翻譯,你會看翻譯者和它的'配置加載器'是兩件獨立的事情。這是一件好事。這意味着你只需要改變加載器。您應該可以使用'$ app-> bindShared('translation.loader')'綁定Laravel自己的加載器的頂部,但您需要確保在翻譯器的第一個解析器之前執行它,因爲翻譯器的集合-up獲取容器的加載器。 – alexrussell

+0

顯然你指定的加載器必須實現'Illuminate \ Translation \ LoaderInterface' – alexrussell

+0

謝謝,我會檢查。 –

回答

0
  1. 創建實現照亮\翻譯\ LoaderInterface,其中加載XML作爲翻譯源

  2. 打開app.php裝載機,並改變照亮\翻譯\ TranslationServiceProvider到自己的裝載機

3.你應該能夠通過調用trans(「yourXmlFile.yourTerms」)來檢查它;