2010-06-15 185 views
2

我愛上了不使用{}但縮進的Python語法。 可以將PHP配置爲不使用{}?是否可以在PHP中使用{}?

+11

我不會。爲什麼不使用Python作爲您的服務器端語言而不是PHP? – Anthony 2010-06-15 23:42:15

+0

我喜歡使用Python作爲一般語言,而不是真正的Web開發語言:) – ggfan 2010-06-15 23:44:23

+1

我懷疑會有。 PHP團隊意識到,用PHP。ini亂七八糟的是,根據配置不同,語言的行爲並不是一個好主意 - 這對編寫程序的人來說是一個兼容的噩夢。 – Artefacto 2010-06-15 23:47:11

回答

14

您不能使用縮進,但有alternative syntax。它使用:

if (cond): 

endif; 

while (cond): 

endwhile; 

不是顯著空白。

0

有一些endif語法類型,但是您可能不應該使用它,以便您可以創建沒有大括號的塊。

即使你找到了某種方式可以讓你通過縮進而不是大括號來標記代碼塊,那也不是一個好主意。如果你真的關心使用Python的語法,然後使用Python。

0

在測試語句或循環之後,您也可以跳過對單個操作使用{}。

3

PHP不像Python那樣使用空格來處理塊。 PHP和Python是兩種截然不同的語言。如果您要「配置」PHP來使用像Python這樣的語法,它將不再是PHP,而是一種新的語言。

沒有直接的方法來做到這一點。如果你想使用PHP,我建議嘗試適應PHP的語法和習慣用法。幸運的是,由於PHP不是空白區域敏感的,所以您可以自由地設置代碼的格式,並使用與Python一樣的縮進方案縮進它。

使用if/edif語法等(如建議)只會讓您的PHP看起來更遠離您嘗試模擬的Python。如果你真的想用Python編程,可以考慮用它作爲你的服務器端語言。如果這是您需要的,甚至可以使Pylons這樣的框架更加簡單。

2

說實話,如果我是你,我會切換到django作爲服務器端的東西,因爲它在很多方面都是比php更好的語言。如果您想避免使用大括號,PHP提供替代語法爲許多它的方法,他們通常是這個樣子:

if(somthing): 
do_somthing(); 
endif; 

我通常使用這些時,我輸出緩衝文本或有小的PHP模板代碼中的感嘆詞。您還可以使用三元經營者和其他慣例,以避免大括號,像這樣的:

if(something) 
    do_something(); 

或ternanry:

(something)?do_something():do_something_else(); 

php手冊是關於讓你知道當你可以用不錯替代語法,但正如我所說,如果你還沒有使用替代PHP語法,這聽起來像是一個奇妙的時間切換到django

+2

我認爲如果**在該三元操作之前沒有**。 – Babiker 2010-06-16 00:43:29

+0

whooops。 fix'd。 – Jesse 2010-06-16 23:02:44