PHP编程在WAP开发中的应用
我们可以使用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程序行,格式为:
1.<?
2.
3.……(程序行);
4.
5.?>
复制代码
(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行的后面加上换行符“\n”(根据需要,也可加多个)。其基本格式为:
echo("……(WML标签和语句行)\n");
例如,下面的语句就是PHP编写WML语句行的典型例子:
echo("<?xmlversion=\"1.0\"?>\n");
而且,echo语句中的“WML标签和语句行”可以连写,以节省程序代码行。例如,下面的一行语句就连写了WML的3行标签语句:
echo("<wml><card><p>");
(5)声明脚本语言。这是对PHP编程的继承,向编译器声明当前程序采用的脚本语言为PHP,格式为:
<scriptlanguage="PHP">
不过这一句可以省略,因为编译器能够自动识别PHP的脚本程序。
(6)文件最后保存时采用的扩展名为“.php”或“.php3”,而不是“.wml”等扩展名。
根据上述规则,我们可以用PHP编写出WML页面的文件头,并让程序在WAP浏览器中显示“Hello,World!”,代码如下:
以下为引用的内容:
1.<?
2.
3.header("Content-type:text/vnd.wap.wml");
4.
5.echo("<?xmlversion=\"1.0\"?>\n");
6.
7.echo("<!DOCTYPEwmlPUBLIC\"-//WAPFORUM//DTDWML1.1//EN\"\"http://www.wapforum.org/DTD/wml_1.1.xml\">\n\n");
8.
9.?>
10.
11.<?
12.
13.echo("<wml><card><p>\n");
14.
15.echo("Hello,World!\n");
16.
17.echo("</p></card></wml>\n");
18.
19.?>
转自:http://www.wapkf.com/viewthread.php?tid=63&extra=page%3D1