WAP与PHP程序设计之基础篇

C语言、编程语言发展史 以铜为鉴,可正衣冠;以古为鉴,可知兴替;以人为鉴,可明得失。 了解和学习一门语言、一个系统乃至方方面面的任何东西时,如果不知道其历史和现状而只是一上来就一味地闷头苦学,你就很容易“一叶障目不见泰山”。这样火急火燎的就上手苦干,私以为大错特错,所谓“学而不思则罔”。当然,上手苦干也是之后的很重要的部分。了解C语言的历史,就不得不慢慢品味如下这long long ago 的故事,这涉及到了很多公司和人物 阅读详情
        WAP的发展离不开其WWW的底蕴,毕竟,整个WAP协议的制定参照了WWW的模型,并且尽可能地沿用了Internet的诸多标准和技术,如WML语言脱胎于HTML与XML,WMLScript与传统的脚本语言也很相似。的确,WAP虽然是个新名词,但是它却与传统的国际互联网密不可分地结合着,在结构上如此,在技术上更是如此。
  
  在WAP协议中提到WAP页面所使用的标记语言为WML,当需要进行较高级的操作,如使用终端机的某些资源时,可以使用WMLScript脚本语言,这两种语言很简单,甚至可以用简陋来形容,特别是它们对 数据库的操作几乎无能为力,这种"缺陷"与WAP广阔的商务和应用前景格格不入,但我们并不是无能为力的,由于WAP和WWW的交融,我们仍然可以使用WWW的技术与资源来解决数据库的访问问题,因为毕竟多数数据库仍处于有线网络内。
  
  目前最流行的网页编程语言和数据库的搭配是什么?相信很多人会说出"PHP"与"MySQL"这两个名字。它们属于WWW或者有线互联网的范畴,由于使用方便与功能强大的特点而美名传播,那么它们能够为WAP服务吗?答案是肯定的。不熟悉WAP或者PHP的人或许有些不解,毕竟在传统意义上PHP提供的是WWW的内容与服务,对于WAP,它们能"兼容"吗?

  PHP粗解

  看了WAP的介绍,大家应该开始逐步理解PHP为何仍能为WAP服务了。PHP与HTML、WML、Javascript、Java都不一样,它是在服务器端运行的,而Javascript、Java等都运行在浏览器端,相对于WAP,WMLScript运行于客户机端,但是,以上的这些语言都可以很容易与PHP结合起来。   

  PHP具有很大的灵活性,在WWW中,它可以生成所需要的任何HTML代码,甚至Javascript代码。同样,在WAP中,我们仍然可以利用PHP这种动态、灵活的特点,生成任意的WML代码,这样,PHP自然能够为WAP服务。   
  
  之所以使用PHP来提供WAP服务,除了它灵活的特点外,还由于PHP可以方便的使用数据库。用户可以使用PHP存取Oracle、Sybase、MS SQL、MySQL、dBase、Informix等任何支持ODBC标准的数据库,这点正好迎合了WAP商务的需求。   

  在实用中,一般需要建立PHP文件,当用户向服务器发出浏览该PHP文件的请求时,服务器将根据文件中的代码产生相应的HTML或WML内容,并发送给浏览器或WAP终端。   
  如想获取关于PHP的信息,可以前往http://www.php.com查看。

  PHP-WML

  PHP的系统平台、工作方式、安装方法,这些都不在本文的讨论范围内,毕竟我们的重点是PHP如何与WAP协作。一般而言,为了能让PHP工作,我们需要带有PHP模块的Web服务器,或者说支持PHP的服务器,Apache是世界上最流行的Web服务器,另外,我们还需要安装PHP软件以及如MySQL这样的数据库,具体内容可以查阅相关书籍或网站。下面我们讨论如何让PHP产生WML代码。
  
  在WWW中,PHP产生的第一行内容往往是: content-type: text/html
  
  但是,WAP终端是读不懂这样的标题的。WAP终端从服务器下载的单位是Deck,浏览的单位是Card,一般一个Deck就组成一个WML文件。那么,为WAP服务时,PHP文件中往往需要包含如下的代码:

  header("Content-type:text/vnd.wap.wml");
  echo "<xml version=/"1.01">/n"
  echo"<! DOCTYPE wml PUBLIC /"-//WAPFORUM//DTD WML 1.1//EN/"/"http://www.wapforum.org//DTD//wml_1.1.xml/">/n"; 

  以上三行代码产生了WML文件(Deck)的文件头,这样WAP终端就可以识别所下载的Deck是否WML格式,并且接着显示余下的Deck内容。
  
  下面是一个最简单的Deck,它在WAP终端上显示"Hello World"。

 <?xml version="1.0" encoding="ISO-8859-1"?> <! DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org//DTD//wml_1.1.xml">
  </xml>
  <!--Nokia Parser Info:Phone = Nokia 7110; Height = 90; Width = 130; CurrentDeckSize = 38; MaxDeckSize = 1600; CardsOnEachLine = 5; CardsVerticalGap = 30-->
  </card id="card1" ordered="true" newcontext="false">
  <p align="left">
  Hello World
  </p>
  </card>
  </wml> 

  我们建立的相应的PHP文件如下:

  <?php
  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";
  echo "/n";
  echo "<!--Nokia Parser Info: Phone = Nokia 7110; Height = 90; Width = 130; CurrentDeckSize = 38; MaxDeckSize = 1600; CardsOnEachLine = 5; CardsVerticalGap = 30-->/n";
  echo "<card id=/"card1/" ordered=/"true/" newcontext=/"false/"> ";
  echo "<p align=/"left/">/n";
  echo "Hello World";
  echo "</p>";
  echo "</card>";
  echo "</wml>";
  ?> 

  我们可以将该文件存为index.php3,当WAP终端浏览该网站时,Web服务器会自动根据index.php3的内容产生如上所列的WML内容,并发送给网关进行处理。WAP终端收到该Deck后,将会在显示屏上显示"Hello World"的字样。
  
  以上是关于PHP在WAP中最简单的应用,它只是简单地产生若干行WML代码,并没有牵扯到数据库的访问。其实,PHP强大的功能可以为WAP提供很丰富的服务,而最值得挖掘的就是其强大的数据库支持,这些将在以后的文章中讨论。

工业级条码识别硬件选型与系统优化实践 条码识别技术作为自动识别领域的核心技术,其硬件选型与系统优化直接影响工业场景下的识别效率与稳定性。基于DSP处理器和微控制器的混合架构,通过硬件加速与软件算法协同,可显著提升解码速度与精度。在自动化产线和智能仓储等场景中,EM3080-W解码芯片与MKV44F64VLH16微控制器的组合方案展现出卓越的环境适应性和抗干扰能力。该方案支持多种工业标准条码类型,并通过优化信号链路、电源设计和通信协议,实现99.97%以上的识别率,日均处理量可达12万次,为工业自动化提供可靠的数据采集基础。 阅读详情

相关推荐

利用C++求坐标系中两点间距离

两点间距离公式常用于函数图形内求两点之间距离、求点的坐标的基本公式,是距离公式之一。

qq_34674558的博客 3619

php+wap手机网站模板

这个是我在网上搜索的php+mysql做的wap手机网站很好的可是我还没有配置好phpmyadmin服务器,但是用opera浏览嚣可以进行测试的

计算两个经纬度之间的距离

假设地球的平均半径为R(通常取6371.004千米)。设第一点A的经纬度为(LonA, LatA),第二点B的经纬度为(LonB, LatB)。经度(Longitude)和纬度(Latitude)需要转换成弧度进行计算,可以使用公式:弧度 = 度数 * π / 180。

零零发不爱ai的博客 3708

PHP开发WAP网站

        WAP(Wireless Application Protocol)是无线应用协议的简称,用来标准化通讯设备(手机,PDA),使用户使用轻便的移动终端设备就可以获得Internet服务,收发电子邮件.WAP将移动网络和INTERNET以及局域网紧密联系起来,向用户提供一种与承载网络无关的、不受地域限制的移动增值业务。        设计一个WAP网站首先要配置一个WAP站点运行的服

yustar的专栏 3557

C#落选,Python“连庄”年度编程语言,TIOBE 1月编程语言排行榜出炉

首先,恭喜Python连续两次摘得TIOBE年度编程语言宝座。这个奖项代表的是过去一年收视率增长最快的编程语言。这是Python第五次获得这个奖,其他四次分别是2007年、2010年、2018年和2020年。 过去一年,Python从年初TIOBE指数的第3位开始,热度不断上升,把原来分别位居前两名的C和Java甩在了后面,成为了TIOBE指数的第一名,目前领先其他语言1%以上。虽然距离Java在2001年创下的26.49%的历史收视率记录还很遥远,但是Python已成多个领域的编程实践语言,而且种种迹象

weixin_64917227的博客 3万+

景区导游(树上两点间距离(LCA不同写法))

【代码】树上两点间距离(LCA不同写法)

weixin_46503238的博客 240

php判断终端是手机还是电脑访问网站代码

<?php function check_wap() { if (isset($_SERVER['HTTP_VIA'])) return true; if (isset($_SERVER['HTTP_X_NOKIA_CONNECTION_MODE'])) return true; if (isset($_SERVER['HTTP_X_UP_CALLING_LI

PHP技术研究 1061

2022年C#落选,Python“连庄”年度编程语言,TIOBE 1月编程语言排行榜出炉

在,TIOBE Software首席执行官曾预测2021年度编程语言是C#,这个出生20多年的编程语言,至今未获得过该荣誉。然而最新结果出炉,C#落选,Python再次荣获年度编程语言称号。 首先,恭喜Python连续两次摘得TIOBE年度编程语言宝座。该荣誉代表的是过去一年收视率增长最快的编程语言。这是Python第五次获得这个奖,其他四次分别是2007年、2010年、2018年和2020年。 过去一年,Python从年初TIOBE指数的第3位开始,热度不断上升,把原来分别位居前两名的C和Java甩在了后

Neuromystix的博客 4143

使用PHP进行Wap开发

基础篇        *返回文章列表*         WAP的发展离不开其WWW的底蕴,毕竟,整个WA

PHP - 高屋建瓴 5124

初学者利用c语言解决简单的数学问题

c语言是一款面向用户十分精确的底层语言,为了初步更好的学习它,我们可以自建一些小程序来简单的完成基础数学问题,或者是方便生活的小软件 例如:鸡兔同笼;华氏度摄氏度之间的转换;坐标系内求两点的长度;计算基础形体的体积或是表面积等等。 下面我以三个较为典型的例子进行叙述 鸡兔同笼问题 鸡兔同笼也就是告诉我们笼内总共有几只脚,总共有几个头有我们通过鸡兔之间的特征计算出鸡和兔分别有几只。 代码如下 #include<stdio.h> int main() { int a = 0;

my Blog 2272

(译)计算距离、方位和更多经纬度之间的点

(译)计算距离、方位和更多经纬度之间的点 计算距离、方位和更多经纬度之间的点。最近在研究预测未来坐标和速度、时间之间的关系,希望这篇文章对地图应用有所帮助。 作者:狐狸家的鱼 本文链接:计算距离、方位和更多经纬度之间的点 原文链接:Calculate distance, bearing and more between Latitude/Longitude points GitHub:...

sueRimn的博客 3041

C语言的人工智能

KNN算法的基本思想是:- 给定一个新的样本数据,通过计算该数据与训练集中所有样本之间的距离,找出距离最近的K个样本。- 根据这K个样本的标签来决定新样本的分类。

2501_90443817的博客 471

【C/C++题目】输入三角形ABC的三个角坐标, 输出三角形ABC的面积

利用海伦公式求三角形面积,因此先利用两点距离公式求得边长,即可求出面积

CoutCodes的博客 3892

机器人编程语言要如何选择?

追求性能与实时性:首选C++(如运动控制)。快速开发与AI集成:Python是首选(如OpenCV/TensorFlow调用)。工业场景:专用语言(URP/KRL)或SCL更高效。复杂系统:ROS框架支持多语言协同,灵活性强。实际开发中常采用混合编程模式(如C++处理实时任务,Python调用AI模型),以平衡性能与开发效率。

视睿 1632

用C编程语言实现经典算法:从理论到实践

算法效率:快速排序在大多数情况下表现优异,但需注意最坏情况空间权衡:动态规划通过空间换时间获得显著性能提升硬件特性:C语言能充分利用缓存局部性原理优化算法性能优先考虑时间复杂度,但不要忽视空间复杂度使用Profiler工具进行热点分析针对特定硬件平台进行指令级优化。

~~~~~~~BUG FLY~~~~~~~~~ 1224

数据结构与算法之最短编辑距离

数据结构与算法之最短编辑距离

weixin_47225948的博客 1094

NX Open API与C#实现零件间最小最大距离测量

在CAD软件二次开发领域,NX Open API作为西门子NX的核心编程接口,为自动化设计验证提供了强大支持。通过空间划分算法和几何计算原理,开发者可以快速实现精确的距离测量功能。结合C#语言的易用性和.NET生态,这种技术方案特别适用于机械设计中的间隙检查、装配验证等场景。以汽车零部件和模具设计为例,利用Measurement类提供的MinimumDistance方法,配合AABB包围盒检测和局部细化算法,既能保证计算精度又能提升性能。这种二次开发模式将传统手动测量升级为自动化流程,显著提升设计效率并降低

weixin_29268637的博客 257

年代久远的C语言为何能长盛不衰?为何能成为编程语言的龙头?

C语言长盛不衰的首要原因就是它是最接近底层的高级语言,基础设施开发离不开它. c语言出现早,比C++早,比Java,Python早更多,属于老爷爷级的语言。这么多年开发,业界积累了大量的好用的源代码,类库和驱动,本着不重复发明轮子的思路,这些资源被很好地继承下来。 推荐一个学C语言/C++的学习裙【 七一九,二二一,三二八 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!还可以领取资料哦,而且也会有大佬在群里解答! C语言很好地做到了精简和可读性之间的平衡,比起同样.

PingMiam的博客 1332
上一篇: 点的是烟,抽的却是寂寞....
下一篇: smarty实例教程
hekey_php
博客等级 码龄21年 4粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值