2014-02-11 52 views
0

我不斷看到是一樣的東西幾個<?php ?>塊

<?php $page_title = ""; ?> 
<?php include_once("inc/header.php"); /* Include Header */ ?> 

<?php 
$page_title = ""; 
include_once("inc/header.php"); /* Include Header */ 
?> 

我認爲在功能方面沒有差別(不知道但是)但這種方式更多語義/正確如果你聲明所有的php在幾個php塊或一個單一的嗎?性能是否受到任何影響?

+0

如果腳本不斷出現,那麼創建單獨的php標籤就沒有用處,這很荒謬。 – krishna

+2

我想象一下,當不止有幾行代碼時,第一個將變得非常難看,難以閱讀。 – David

+1

第一種方法也會將換行符輸入到輸出中,這可能不會發生 –

回答

1

這就是爲什麼做你的PHP直列是走出去的風格的一個重要原因的所有命令。我知道沒有性能問題。所有<?php ?>所做的就是告訴解釋,這是由PHP進行處理,以便您的第一個代碼塊是說

停止解析PHP
開始解析PHP

我會想象有一些微不足道的命中某處如果你試圖扭虧爲盈,但我認爲這是微不足道的。對用戶來說很重要的是,如果你使用操作碼緩存(你應該),那麼唯一的選擇就是解析端。這裏重複執行緩存將有0個效果。

但是,可讀性確實要求您的代碼儘可能緊湊。請記住,有人可能會跟在你後面,並在這個代碼上工作。有兩個塊只需要一個是低效的。

1

這沒有真正的答案。有些人喜歡把它稱爲「代碼塊」,並將其全部放在一組標籤中,其他人更喜歡「HTML-Tag」 - 他們將每個命令放在一組新的標籤

功能沒有什麼區別,除了一個?>和下一個<?php之間的所有內容都被echo'ed(所以你的輸出HTML中有很多空格,這是可以的,因爲它們被忽略了)

性能可能會受到影響,但在數量上你真的不需要關心。一般來說,如果你在模板中(或者說PHTML,HTML和PHP混合在一起),儘量保持所有單行命令(把所有的單個命令放在<?php ?>和自己的行中),這將使它更多所有這些HTML標籤之間可讀。

如果你沒有在你的PHP文件的HTML,沒有理由爲封裝與PHP標籤

相關問題