当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP 输出简单动态WAP页面

PHP
MYSQL版本大于4.1问题 - PHPchina
怎么让用户点击一个连接后,把一个图片另存了 - PHPchina
武汉10月15日Phper聚会召集!!! - PHPchina
php如果不等待exec执行的程序创建的子进程? - PHPchina
哪位知道DISCUZ处理防SQL注入的代码是哪部分 - PHPchina
求教!我实在不知道哪里问题,在线等ing - PHPchina
怎样结束用户某一进程 - PHPchina
比对用户名密码能不能这样写? - PHPchina
求助:如何在PHP+mysql中实现数据备份? - PHPchina
大家看看这个配置对吗 - PHPchina
如何禁止require当前文件 - PHPchina
无法将回调函数放在类中? - PHPchina
村里 PHP代码高亮是怎么实现的? - PHPchina
apache安装后.服务里没有apache2这个服务! - PHPchina
请教一个小问题 - PHPchina
config.php里面是不是应该把多数参数设置为常量而不是变量? - PHPchina
请教高手一个问题 - PHPchina
如何让百度收录我的网站 ?? - PHPchina
谁能给个注入的简单语句? - PHPchina
求PHP站内搜索思路 - PHPchina

PHP 输出简单动态WAP页面


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

首先,不管你是在本地调试还是想浏览网络上的wap页面,都需要一个能解析wap页面的浏览器 当然,也有其他方法,网上可以搜索得到。我这里推荐一个既能浏览http页面又能浏览wap页面的方法,那就是用Firefox + wmlbrowser组件。装好wmlbrowser组件的firefox就可以支持直接浏览wap页面了。
由于需要动态输出内容,我们不得不将页面的后缀名定为.php,那这样如何让浏览器将其解析为wap页面呢?很简单,只要在头文件输出的时候告诉浏览器该文件的MIME类型就行了。
复制代码 代码如下:

<?php
header("Content-type: text/vnd.wap.wml");
?>

有了上面一句,文件的扩展名就不重要了。
接下来就当是在编写一个PHP文件就行了,语法啊函数啊全部照常,记得在开头先输出XML的格式头,
复制代码 代码如下:

<?php
echo ('<?xml version="1.0"?>');
?>

另外,文本的格式要按wml的格式来写(也相当于xml),wml规范相当严格,一点失误都可能导致无法输出所需页面。
一个wml的模板如下:
复制代码 代码如下:

<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.3//EN" "http://www.wapforum.org/DTD/wml13.dtd" >
<wml>
<card title="">
</card>
</wml>

目前的大多数WAP手机(Nokia7110、爱立信R320S等等)都是使用UTF-8编码的,也就是采用UNICODE来编码。这样,如果我们直接在WML使用中文字符(GB2312编码),将会产生乱码,手机用户无法识别,所以我们在输出中文之前,要使用程序或函数对中文进行UNICODE的编码。而在少数支持GB2312编码的手机或WAP终端设备中,我们可以在程序中定义好文档的内码类型后即可直接正确显示汉字。