当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP编程在WAP开发中的应用

PHP
discuz Passport 通行证 整合笔记
flash+php+mysql打造简单留言本教程
[原创]效率较高的php下读取文本文件的代码
phpmyadmin的安装与使用图文教程
IStream与TStream之间的相互转换
继续收藏一些PHP常用函数
php-5.2下php.ini 中文版配置说明
php单件模式结合命令链模式使用说明
PHPMailer邮件类利用smtp.163.com发送邮件方法
PHP编实现程动态图像的创建代码
php仿ZOL分页类代码
php仿discuz分页效果代码
攻克CakePHP(PHP中的Ruby On Rails框架)图文介绍
PHP ajax 分页类代码
PHP和Java 集成开发详解分析 强强联合
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
Pear DB 新手入门指南教程
PHPMailer安装方法及简单实例
Apache+php+mysql在windows下的安装与配置图解(最新版)

PHP编程在WAP开发中的应用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 179 ::
收藏到网摘: n/a

我们可以使用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行的后面加上换行符“\n”(根据需要,也可加多个)。其基本格式为:

echo("……(WML标签和语句行)\n");

例如,下面的语句就是PHP编写WML语句行的典型例子:

echo("<?xml version=\"1.0\"?>\n");

而且,echo语句中的“WML标签和语句行”可以连写,以节省程序代码行。例如,下面的一行语句就连写了WML的3行标签语句:

echo ("<wml> <card> <p>");

(5) 声明脚本语言。这是对PHP编程的继承,向编译器声明当前程序采用的脚本语言为PHP,格式为:

<script language="PHP">

不过这一句可以省略,因为编译器能够自动识别PHP的脚本程序。

(6) 文件最后保存时采用的扩展名为“.php”或“.php3”,而不是“.wml”等扩展名。

根据上述规则,我们可以用PHP编写出WML页面的文件头,并让程序在WAP浏览器中显示“Hello, World!”,代码如下:

以下为引用的内容:

<?

header("Content-type: text/vnd.wap.wml");

echo("<?xml version=\"1.0\"?>\n");

echo("<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www. wapforum.org/DTD/wml_1.1.xml\">\n\n");

?>

<?

echo ("<wml> <card> <p>\n");

echo ("Hello, World!\n");

echo ("</p> </card> </wml>\n");

?>