我很驚訝地發現你可以將PHP函數分解爲原始HTML並返回。我知道你可以用循環和條件來做這種事情,但這對我來說是一個驚喜。這是一個意外還是這個明確定義的行爲? (我在手冊中找不到關於功能案例的任何明確的討論。)您何時可以混合使用HTML和PHP,是否有任何限制?
[注意:以下代碼沒有給出我何時會使用此行爲的一個很好的示例,但我保持它對演示目的]
<?php
$i = 0;
while($i++ < 3) {
?><p>I am in a while loop.</p><?php
}
// this part surprised me
function actSkeptical($adjective) {
?><p>Is it <?= $adjective ?> that this works?.</p><?php
}
actSkeptical("weird");
?>
輸出:
I am in a while loop.
I am in a while loop.
I am in a while loop.
Is it weird that this works?
我知道有些人很討厭混合PHP和HTML這樣的,但我不能做OOP /模板(對於原因,我不會進入這裏),我喜歡儘可能多地查看原始HTML。
此外,我不太瞭解上面的短打開/關閉標記(輸出$adjective
)如何與周圍的代碼一起工作的語義。 PHP是否僅僅將原始HTML視爲echo
聲明?然後<?= $adjective ?>
就像在一個字符串中包含一個變量?
您正在查看PHP的行爲。這並不漂亮,我不建議這樣編碼,但如果您認爲有必要,可以利用它。基本上,PHP並不關心''標籤之外的任何內容,PHP之外的任何內容都會發送到瀏覽器。 – Crackertastic 2014-10-17 04:55:58
http://php.net/manual/en/language.basic-syntax.phpmode.php – 2014-10-17 04:57:08
@Tieson謝謝,但我讀過,不幸的是它沒有提及函數。 – 2014-10-17 05:01:22