用 PHP 程式語言開發動態 WAP 頁面

2021-03-31 08:56:30 字數 2273 閱讀 9559

wap (無線通訊協議)是在數字移動**、個人手持裝置(pda等)及計算機之間進行通訊的開放性全球標準協議。隨著無線通訊的不斷發展,靜態的 wap 頁面在很多方面已經不能滿足使用者個性化的要求,因此開發者可以在 wap 伺服器端使用諸如php等語言產生動態的 wml 頁面,來滿足使用者的需要。

wap 的應用結構非常類似於 inter***,乙個典型的 wap 應用請求步驟描述如下:

1. 具有 wap 使用者**功能的移動終端(如 wap 手機),通過內部執行的微瀏覽器向某一**傳送 wap 服務請求。該請求先由 wap 閘道器截獲,對資訊內容進行編碼壓縮,以減少網路資料流量,同時根據需要將 wap 協議轉換成 http 協議。

2. 協議將處理後的請求轉送到相應 wap 伺服器。在 wap 伺服器端,根據頁面副檔名等屬性,被請求的頁面直接或由伺服器端指令碼解釋後輸出,再經過閘道器傳回給使用者。

從上述的 wap 應用流程可以發現,生成動態 wap 頁面與動態產生 web 網頁的過程非常相似。但是由於 wap 應用使用的 wml 語言**於語法嚴格的 xml,因此要求輸出的格式必須按 wap 網頁的規範輸出。同時,由於 wap 協議的應用範圍及移動客戶端的軟、硬體配置等侷限性,對每次輸出的頁面的大小、影象的格式及容量都有一定限制。本文筆者將以php語言為例,和廣大網路程式開發愛好者共同**動態輸出 wap 頁面的方法和應用。

輸出簡單的動態 wap 頁面

由於生成 wap 頁面的過程和生成一般的 web 頁面非常類似,筆者通過乙個最簡單的 wap 頁面的例子來介紹。不過提醒一句:由於需要 php 直譯器來解釋該程式並輸出 wap 頁面,因此所有類似的程式應以「php」為副檔名哦。

<?php

header

("content-type: text/vnd.wap.wml"

); //定義輸出文件為wml型別

echo (

" ");

echo (

"hello wap"

); echo (

"");

?>

該例項可以在 wap 手機模擬器中瀏覽,輸出一句經典的「hello wap」語句,但是在普通的網路瀏覽器中是無法識別的,原因很簡單,在程式開頭宣告了該輸出文件為 wml 型別,只有 wap 裝置能夠識別並解釋。不過又要提醒一句:常見的 html 語言對規範性要求不嚴,大多數瀏覽器能「寬容」地接受其中的編寫錯誤,但是 wml 的規範相當嚴格,任何的錯誤都可能導致無法輸出所需的頁面。

例項1 動態生成影象

wap 使用的影象是一種特殊的黑白影象格式:wbmp。開發者可以使用一些現有的工具將一般影象轉換成 wbmp 格式,然後在 wml 文件中使用。但是如果在wap程式中能動態地生成所需影象(如**的**圖),將會使程式有極其廣闊的應用前景。php 提供了強大的圖形繪製功能,下面的例項將將在 wap 模擬器中顯示乙個黑色的矩形框。

(注意:要使用 gd 的影象函式庫,必須在php配置中載入「php_gd.dll」庫檔案。)

<?php

header

("content-type: image/vnd.wap.wbmp"

); //定義輸出的影象格式為wbmp

$im

= imagecreate(50

, 50

); $white

= imagecolorallocate

($im

,255

,255

,255

); $black

= imagecolorallocate

($im,0

,0,0

); imagerectangle

($im, 5

, 5

, 20

, 20

, $black

); imagewbmp

($im

); imagedestroy

($im

); ?>

例項2 處理漢字

<?php

header

("content-type: text/vnd.wap.wml; charset=gb2312"

); //定義字元的編碼為gb2312

echo (

"");

echo (

"你好"

); echo (

"");

?>

在程式的「header」語句中,定義了文字的編碼為 gb2312,如果使用者的手機支援 gb2312 編碼,將會顯示「你好」的字樣。

用PHP程式語言開發動態WAP頁面

wap 無線通訊協議 是在數字移動 個人手持裝置 pda等 及計算機之間進行通訊的開放性全球標準協議。隨著無線通訊的不斷發展,靜態的 wap頁面在很多方面已經不能滿足使用者個性化的要求,因此開發者可以在wap伺服器端使用諸如php等語言產生動態的wml頁面,來滿足使用者的需要。wap的應用結構非常類...

用 PHP 程式語言開發動態 WAP 頁面

wap 無線通訊協議 是在數字移動 個人手持裝置 pda 等 及計算機之間進行通訊的開放性全球標準協議。隨著無線通訊的不斷發展,靜態的wap頁面在很多方面已經不能滿足使用者個性化的要求,因此開發者可以在wap伺服器端使用諸如 php 等語言產生動態的 wml 頁面,來滿足使用者的需要。wap 的應用...

用PHP程式語言開發動態WAP頁面

wap 無線通訊協議 是在數字移動 個人手持裝置 pda等 及計算機之間進行通訊的開放性全球標準協議。隨著無線通訊的不斷發展,靜態的wap頁面在很多方面已經不能滿足使用者個性化的要求,因此開發者可以在wap伺服器端使用諸如php等語言產生動態的wml頁面,來滿足使用者的需要。wap的應用結構非常類似...