我們可以使用PHP來編寫WAP程序,比如開發動態的WML頁面,不過條件是需要將輸出的標簽或語句限制在WAP微型浏覽器可接受的范圍之內。而且,PHP 還可以在一個HTML(及HDML)文件中編寫出既適合於HTML(及HDML),也適合於WML的內容。PHP的源代碼對於WAP客戶端來說是不可見的,所以我們可以針對HTML浏覽器輸出HTML頁面,而針對WAP浏覽器輸出HDML頁面或WML頁面。
11.3.1 基本規則
以WML為例,使用PHP編寫WML程序的基本規則如下:
(1) 使用“<?”和“?>”來包含PHP編寫的WML程序行,格式為:
<?
……(程序行);
?>
(2) 程序行語句均以分號( ; )結尾,這是與ASP編寫WML程序不同的地方。
(3) 使用PHP的header關鍵字來聲明WML的文件類型,基本格式為:
header("Content-type: text/vnd.wap.wml");
上述格式是專為WAP浏覽器識別而采取的書寫格式。如果開發中用戶想使用普通的浏覽器,如IE浏覽器來測試程序效果,則可在該語句的前面加上雙斜線(//),格式為:
// header("Content-type: text/vnd.wap.wml");
這樣,基於PC的浏覽器將忽略程序中無法理解的WML標簽,這時當前的程序實際上成為了HTML頁面。當想在WAP設備或者模擬器上測試的時候,只需要去掉“//”,當前頁面就會自動變成WML頁面。
(4) 其他WML標簽和語句行一律使用PHP的echo關鍵字來聲明,每個WML行的後面加上換行符“ ”(根據需要,也可加多個)。其基本格式為:
echo("……(WML標簽和語句行) ");
例如,下面的語句就是PHP編寫WML語句行的典型例子:
echo("<?xml version="1.0"?> ");
而且,echo語句中的“WML標簽和語句行”可以連寫,以節省程序代碼行。例如,下面的一行語句就連寫了WML的3行標簽語句:
echo ("<wml> <card> <p>");
(5) 聲明腳本語言。這是對PHP編程的繼承,向編譯器聲明當前程序采用的腳本語言為PHP,格式為:
<script language="PHP">
不過這一句可以省略,因為編譯器能夠自動識別PHP的腳本程序。
(6) 文件最後保存時采用的擴展名為“.php”或“.php3”,而不是“.wml”等擴展名。