从上述WAP应用流程能够看到,生成动态WAP页面与动态产生Web网页的过程很是相似。可是因为WAP应用使用的WML语言来源于语法严格的XML,因 此要求输出的格式必须按WAP网页的规范输出。同时,因为WAP协议的应用范围、移动客户端的软硬件水平等特殊性,对每次输出的页面的大小、图像的格式及 容量都有必定限制。下面咱们以PHP脚本语言为例,看看如何动态输出WAP页面。 4、在PHP中处理汉字 WAP做为一种全球应用,选择了UNICODE 2.0做为其标准字符集编码,以便能同时处理包括英文、中文、日文、法文等多种文字。而咱们日常处理汉字使用的是GB2312编码,不一样的内码标准势必不 能通用,所以若是不在两种编码之间经过码表进行转换,就会出现汉字乱码现象。如今已经有较成熟的GB-2312与UNICODE编码转换的程序和函数,并 在ASP、PHP、JSP等系统中使用,咱们能够在一些技术站点上找到它们。 目前的大多数WAP手机(Nokia71十、爱立信R320S等等)都是使用UTF-8编码的,也就是采用UNICODE来编码。这样,若是咱们直 接在WML使用中文字符(GB2312编码),将会产生乱码,手机用户没法识别,因此咱们在输出中文以前,要使用程序或函数对中文进行UNICODE的编 码。而在少数支持GB2312编码的手机或WAP终端设备中,咱们能够在程序中定义好文档的内码类型后便可直接正确显示汉字,例如: <?php header(″Content-type: text/vnd.wap.wml; charset=gb2312″); echo (″<wml><card><p>″); echo (″中文测试″); echo (″</p></card></wml>″); 3、用PHP动态生成图像 WAP应用使用一种特殊黑白的图像格式WBMP。咱们能够用一些工具来将已有图像转换成WBMP格式,而后在WML文档中使用。可是在WAP站点上如 果能动态地生成所需图像如K线图等,将会有广阔的应用前景。幸运的是,PHP的GD库(版本1.8以上)已经提供了相应函数。 <?PHP Header(″Content-type: image/vnd.wap.wbmp″); Sim = ImageCreate(50, 50); Swhite = ImageColorAllocate(Sim,255,255,255); Sblack = ImageColorAllocate(Sim,0,0,0); ImageRectangle(Sim, 5, 5, 20, 20, Sblack); ImageWBMP(Sim); ImageDestroy(Sim); ?> 该文件将在WAP模拟器中显示一个黑色矩形框。注意要使用GD的图像函数库,必须在PHP配置中加载PHP_GD.DLL库文件。 ?> 2、用PHP输出简单动态WAP页面 下面有一个最简单的PHP生成WAP页面的例子。注意因为须要PHP解释器来解释该程序,并输出WAP页面,所以全部相似程序应以.php为扩展名。 <?php header(″Content-type: text/vnd.wap.wml″); echo (″<wml> <card> <p>″); echo date( ″l dS of F Y h:i:s A″ ); echo (″</p></card></wml>″); ?> 该例子在WAP手机模拟器中能够浏览,输出当前日期时间,而在普通的浏览器中没法识别,甚至会被认为是错误下载。这是由于在程序开头就声明了该输出文 档为WML类型,该类型只有WAP设备可以识别并解释。值得注意的是,咱们常见的HTML语言对规范性要求不严,大多数浏览器能“容忍”其中至关多的编写 错误,而WML规范至关严格,一点失误均可能致使没法输出所需页面。 一旦咱们知道了用PHP脚本输出WAP页面的标准过程,咱们就可以使用PHP强大的功能配合以WML语言的交互处理以及WML Script的简单脚本,开发出适合咱们须要的应用系统了。 1、设置WEB服务器 首先你的 Web服务器要安装好PHP,即能处理PHP脚本程序。其次,为使Web服务器能同时识别和处理PHP、WML、WBMP等文件,Web 服务器的MIME表需添加如下的几种文件类型。 text/vnd.wap.wml .wml image/vnd.wap.wbmp .wbmp application/vnd.wap.wmlc .wmlc text/vnd.wap.wmls.wmls application/vnd.wap.wmlsc .wmlsc WAP(无线通信协议)是在数字移动电话、我的手持设备(PDA等)及计算机之间进行通信的开放性全球标准。因为静态的WAP页面在不少方面不能知足用户个性化的服务请求,所以经过WAP服务器端语言产生动态的WML页面,具备很普遍的应用价值和很高的商业价值。 WAP应用结构很是相似于Internet,一个典型的WAP应用请求是这样的:首先,具备WAP用户代理功能的移动终端(WAP手机等)经过内部运 行的微浏览器(Micro Browser)对某一网站以无线方式发送WAP服务请求。该请求先由WAP网关截获,对信息内容进行编码压缩,以减小网络数据流量,同时根据须要将 WAP协议转换成HTTP协议,而后将处理后的请求转送到相应WAP服务器。在WAP服务器端,根据页面扩展名等性质,被请求的页面直接或由服务器端脚本 解释后输出,再经网关传回用户。