2010-11-12 62 views
8

Facebook的XHP擴展介紹什麼是基本XML文本(當然,XHTML文字),以PHP語言,允許類似下面的語法:什麼是PHP IDE支持Facebook XHP擴展?

$foo = <div>hello</div>; 

$foo = <div> 
     hello 
     </div>; 

$foo = 'hello'; 
echo <div>{$foo}</div>; // outputs <div>hello</div> 

$foo = 'hello'; 
echo <div>{substr($foo, 0, 2)}</div>; // outputs <div>he</div> 

最大的問題是,我無法找到一個IDE支持此語法沒有將其標記爲語法錯誤。

我被告知Facebook通常使用vim或emacs進行開發,但我希望有一個支持此語法的更成熟的IDE。目前,Netbeans 6.9,7.0 M2和Zend Studio 8都將此語法標記爲錯誤,即使它在啓用XHP擴展的情況下在PHP上執行正常。

對編輯器或插件編輯器的建議,可以使其在沒有語法錯誤的情況下工作?

信息關於XHP: https://github.com/facebook/xhp/wiki

+1

這個問題已經超過3年了。我正在使用** NetBeans IDE 7.4 ** - 它仍然不支持XHP語法。我也沒有找到支持XHP語法的體面IDE。 – 2013-12-26 07:02:11

回答

0

我從來沒有使用這個擴展我剛剛粘貼在一個PHP頁面代碼中PHPDesigner 7,並沒有認爲這是一個錯誤。

我只是喜歡這個應用程序:http://www.mpsoftware.com/

試試吧,看看它是否適合你的需要。

2

這個線程很老,但我希望這可以幫助別人! 我試過aptana studio3中的代碼並且工作!

+0

在Aptana中不適合我 - 標記爲紅色... – 2014-02-28 18:02:38

0

我剛剛在JetBrains網站上搜索了這個功能(在PHPStorm中):他們說這是非常複雜的,所以它不會很快來(http://youtrack.jetbrains.com/issue/WI-1208)。我認爲所有其他主要IDE都是一樣的。

我想到的是:Emacs。我剛剛開始學習Emacs,因爲可以將它擴展爲一種非常簡單的方法,僅適用於像XHP(實際上是嵌入式DSL)的DSL。這是Emacs http://david.rothlis.net/emacs/howtolearn.html的一個很好的教程。

3

嘗試NetBeans中去Tools>Options查找選項卡Miscellaneous>Files。選擇您的Extension或點擊新。記住insert ignored files pattern應該被插入,如果不是,你會得到錯誤語法。

2

在Facebook我們有時會使用SublimeText或Textmate。這兩者在本質上都支持XHP。他們不一定理解它,但他們不認爲它是無效的語法。據我所知,Facebook上沒有人爲IDE提供任何擴展來更好地處理語法,主要可能是因爲我們確實使用了