Forum und email

基本語法

Table of Contents

從 HTML 中逸出

當 PHP 剖析一個檔案時,它是不會對一般字元作任何處理,除非它遇上了其中一個特殊標籤,標明 PHP 程式的開始。這時,PHP 才開始以 PHP 程式碼來解譯該段文字,至到它遇上 PHP 程式碼結束的標籤。此結尾標記以後的文字又會被當作是普通文字來處理了。這種處理方法讓您輕易的在 HTML 文件中嵌入 PHP 的程式碼。PHP 標籤以內的將當作是 PHP 程式碼來剖析、標籤以外的則原封不動。

用來表示 PHP 程式碼區塊的標籤共有四套,當中只有 <?php. . .?> 和 <script language="php">. . .</script> 兩套是經常可以使用的。另外兩套 (<?. . . ?> 及 <script language="php">. . .</script>) 可以通過設定 php.ini 檔來開關。雖然短型的和 ASP 式的標籤使用起來較為方便,但在兼容上它們卻始終比不上長型的。例如,如果您要在 XML 或 XHTML 中嵌入 PHP程式碼,那您就一定要使用 <?php. . .?> 型的標籤以符合 XML 的標準了。

PHP 支援的標籤包括:

Example#1 逸出 HTML 的方式

1.  <?php echo("if you want to serve XHTML or XML documents, do like this\n"); ?>

2.  <? echo ("this is the simplest, an SGML processing instruction\n"); ?>
    <?= expression ?> This is a shortcut for "<? echo expression ?>"
    
3.  <script language="php">
        
echo ("some editors (like FrontPage) don't
              like processing instructions"
);
    
</script>

4.  <% echo ("You may optionally use ASP-style tags"); %>
    <%= $variable; # This is a shortcut for "<% echo . . ." %>

第一種方法 (<?php. . .?>) 是被建議使用的,因為它可以讓您在符合 XML 標準的XHTML 碼中嵌入 PHP 程式碼。

第二種方法只有在啟動以後才可以使用,而開啟的方式包括:使用 short_tags() 函數 (只有 PHP 3 而已),在 PHP 組態檔中開啟 short_open_tag,或在編譯 PHP 時在 configure 加入 -enable-short-tag 選項。即使在 php.ini-dist 檔中被預設為開啟,短型的標籤還是不被建議使用的。

第四種 ASP 式的標籤只有在組態檔中開啟了 asp_tags 後才能使用。

Note: ASP 式標籤的支援在 3.0.4 版本才加入的。

Note: 在開發大型程式、編寫用來再分配的程式庫,或將您的程式部署在別人的伺服器上時,我們建議您使用長型的 PHP 標籤,因為並非所有的伺服器都開啟了短標籤的支援。

程式區塊的結尾標記將包括緊隨其後的換行字元﹝若有的話﹞。此外,結尾標記已包含了分號 (;),所以您不必再為它加上。

PHP 允許您使用如下的寫法:

Example#2 進階逸出範例

<?php
if ($expression) { 
    
?>
    <strong>This is true.</strong>
    <?php 
} else { 
    
?>
    <strong>This is false.</strong>
    <?php 
}
?>
上述程式碼將如常的運作,因為當 PHP 遇上 ?> 結尾標記時,它將不加處理的輸出所有文字,直到遇上另一個開始標籤。當您的程式需要輸出大量的文字時,使用上述逸出方法輸出文字其效率會比使用 echo()print()() 函數來得更高。