PHP 输出简单动态WAP页面

yipeiwu_com6年前PHP代码库
当然,也有其他方法,网上可以搜索得到。我这里推荐一个既能浏览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终端设备中,我们可以在程序中定义好文档的内码类型后即可直接正确显示汉字。

相关文章

PHP5.2中date()函数显示时间与北京时间相差8小时的解决办法

问题: php函数date("Y-n-d   H-i-s");   输出的时间与当地时间相差8个小时. 解决思路 北京时间是东8区,可能是时区问...

php中简单的对称加密算法实现

前言 在网上找到了一个不错的PHP方面的对称加密算法;在PHP的语法环境里,有urlencode与urldecode,base64_encode和base64_decode自带的对称算法...

php验证手机号码(支持归属地查询及编码为UTF8)

复制代码 代码如下: <?php // 手机号验证 function checkMobileValidity($mobilephone){ $exp = "/^13[0-9]{1}...

10 个经典PHP函数

1. sys_getloadavg() sys_getloadavt()可以获得系 统负载情况。该函数返回一个包含三个元素的数组,每个元素分别代表系统再过去的1、5和15分钟内的平均负...

php下实现折线图效果的代码

<?php   Class ImageReport{  var $X;//图片大小X轴  var $Y;//图...