HTTP协议与XML
来源:互联网 发布:污网络用语大全及解释 编辑:程序博客网 时间:2024/04/28 15:57
HTTP协议即超文本传输协议,它详细规定了浏览器和万维网服务器之间的通信规则,是通过因特网传送万维网文档的数据传送协议。
在使用PHP做HTTP服务端的时候,Apache为我们解析好了大部分的协议,并提供了非常方便的方法以供我们获取需要的信息。
其中,我们需要关心的两个全局变量$_GET和$HTTP_RAW_POST_DATA。Apache解析好请求的HTTP协议,把请求的get数据和post变量写$_GET和$HTTP_RAW_POST_DATA变量中。我们只要直接使用$_GET和$HTTP_RAW_POST_DATA就能取到微信后台传给我们的数据。
$_GET是一个数组;key是各个GET数据的key;$HTTP_RAW_POST_DATA是一个字符串,包含body的所有内容。在设置这些变量的同时,Apache还为我们设置了一个$_POST变量,它用来存前台HTML的form表达提交的数据。大家不要五一为$_POST变量就是想要的POST数据。
HTTP请求中的POST数据,POST数据与GET不同,它不会有KEY值,POST数据一般都比较大,GET数据往往比较小。
XML是一种可扩展的标记语言,可以用来标记数据,定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
XML的语法基本模式是:分别用<itemName>和</itemName>来表示一个条目的开始和结束。微信后台给我们发的XML没有属性字段。字符串用“![CDATA[text]]"表示,其中text可以是任何字符串,用CDATA包起来的目的是让text的内容不会解析成别的条目,只会解析成字符串。整个XML文档必须要有一个跟条目,该条目可以是任意名字。微信后台的跟条目是以<xml>开始</xml>结束的。
PHP为我们提供了一个简单的函数来解析xml,simplexml_load_string.它接收5个参数,第一个是需要解析的字符串,其他4个参数都是可选的。在解析成功的时候刽返回一个SimpleXMLElement的对象,如果解析失败会返回false.一般在入参中传入的XML数据不符合规范的时候才会解析失败返回false,
PHP的全等号”===",只有当全等号左边和右边的表达式的大小和类型完全相等时才返回true,虽然PHP是弱类型语言,但并不代表变量没有类型。两个 等号"=="只能判断两边的值是否相等。
- HTTP协议与XML
- http协议与XML书写规范及解析技术
- 通过Http协议获取XML
- XML解析和HTTP协议
- RTSP协议与HTTP协议
- RTSP协议与HTTP协议
- RTSP协议与HTTP协议
- RTSP协议与HTTP协议
- RTSP协议与HTTP协议
- RTSP协议与HTTP协议
- http协议与https协议
- HTTP协议与AJP协议
- HTTP协议与TCP协议
- http协议与http代理
- http协议与http代理
- HTTP 协议详解与HTTP 协议压缩
- HTTP 协议详解与HTTP 协议压缩
- HTTP 协议详解与HTTP 协议压缩
- Problem K: Cylinder
- 我为什么要求你用功读书
- [Android] ListView 滚回顶部
- leetcode_138_ Copy List with Random Pointer
- 数据结构之栈
- HTTP协议与XML
- Xcode提交代码到SVN,文件右边出现UM
- 博白县办港澳通行证流程及相关费用
- leetcode_141_ Linked List Cycle
- SVD在推荐系统中的应用与实现(c++)
- json jsonp ajax
- Runtime Error!
- python日期转换
- 跨平台数据对接2