2014-10-01 60 views
0

有人可以向我解釋爲什麼這有效嗎?這爲什麼有效? (HTML + PHP)

<?php if ($selected_subject_id) { ?> 
    <h2>Manage Subject</h2> 
<?php } elseif ($selected_page_id) { ?> 
    <h2>Manage Page</h2> 
<?php } else { ?> 
    Please select a subject or a page. 
<?php }?> 

基本上, 如果你點擊一個主題「管理主題」顯示爲標題 如果你點擊頁面「管理頁面」顯示爲標題 如果沒有被點擊則顯示「請選擇一個主題或頁面」 只有一個這些顯示在一次

我的問題是,爲什麼標題/味精的行爲就好像他們是在PHP腳本(服從條件),當他們實際上是在它之外?

這是因爲它們在條件的開始和結束括號之內嗎?

在什麼其他情況下這將工作?

謝謝。

+0

*「是否因爲它們在條件的開始和結束括號內」?「是的。另請參閱http://php.net/manual/control-structures.alternative-syntax.php – Phil 2014-10-01 04:51:39

+0

瞭解它的最簡單方法是將「」腳本之外的所有內容都視爲「echo」聲明,該文本作爲文字字符串。但沒有任何內容被解釋:沒有可變擴展,沒有轉義序列等。 – Barmar 2014-10-01 04:54:58

+0

閱讀此:http://programmers.stackexchange.com/questions/180501/which-is-better-to-include-html-inside- php-code-or-outside-it – 2014-10-01 04:58:03

回答

1

PHP確實能夠以這種方式有條件地回顯HTML。這實際上是相當常用的。

你也可以在循環中回顯HTML。

+0

但是回顯html並不是一個好主意,他所做的是正確的。 – 2014-10-01 04:56:45

+0

我的意思是'回聲'就像在這種方式打印,而不是'echo'關鍵字。 – Scimonster 2014-10-01 04:57:39

+0

謝謝大家,我現在明白了。 – 2014-10-01 05:16:23