Php 笔记1-----request和 response
不能大于2KB
第一次学习 php, 因为以前习惯了 。net, 所以 刚开始总是按照.net的 思路去思考, 怎么获取 客户端发过来的 request对象啊, 怎么设置response啊。。凹槽 ,搞得自己脑子像浆糊一样, 不适应php的语法。 感觉php的语法 面向过程的痕迹很重, 可能是我 不了解, 所以下面的总结不一定对, 全给自己做笔记用了 , 如果有不对的 ,希望各位给我回复,不胜感激。。。。。
首先,php是将 html 与 php语言融合在一起的, 并没有像 asp.net 一样按照mvc架构将显示后后台逻辑分开, asp.net是将.aspx 文件 代表 一个 类,当需要输出给浏览器的时候, asp,net遍历这个页面类 ,将其转化成html发送给浏览器。而php不是,它属于脚本语言(什么叫脚本语言,我也不知道,擦,以前搞手极端的废品,对网络服务器这块完全不懂,唉,只理解到不是那种编译后可以生成dll之类的可执行文件的编程语言。)
浏览器与服务器的通信最常用的是 http协议, http协议包括request, 和 respon。
在 asp.net中(看了asp.net前面20页,瞎扯的),request和 response都是以对象的方式 呈现的。如果你习惯了微软的.net开发 会觉得很容易上手,一直觉得微软的东西不错啊。 但是为毛不流行不清楚,想学php是为了打算对discuz二次开发 ,省事 。哈哈
对于 post , asp.net获取数据的方式是 Request.form
<form name="test" method="post" action="test4_2.asp"> <!--
form必备3个属性:name、mathod="post"、action -->
请输入您的姓名:
<input type="text" name="user_name"> <!-- 元素一:文本框,名称:user_name -->
<input type="submit" value="提交"> <!-- 元素二:提交按钮,值:提交 -->
</form>
比如 当用户在浏览器中点击提交按钮的时候 ,在服务器端 就可以通过 Request.form[“user_name”]获得 表单中 user_name控件的值。 我是觉得很方便。
而在 php中呢,则是通过 $_POST['user_name'](单引号啊 ,擦 ,日,为毛,深深不习惯。)
对于 get,asp.net 获取数据的方法是 Request.QueryStr,ing("id"), 比如浏览器在 url后面带参数, a.asp?id=1; 则 服务器端的 Request.QueryString("id")==1. request包含很多东西,比如cookie 也可已通过 request.cookie["name"].value获取。
在 php中呢,对应的获取 get的参数的方法是 , $_Get['id'] 就可以获取 url的附带参数了。
总的来说
Request.Form 对应 $_POST
Request.QueryString 对应 $_GET
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
另外 需要注意的一点是,php中 $_request和$_post, _get ,区别。
$_REQUEST[] ($USER_ID = $_REQUEST['USER_ID']接收)具有$_POST和$_GET[]的功能,但是 它比较慢, 通过 $post和 $get获得的数据可以通过$Request数据获得。使用REQUEST获取数据,POST包含的数据将覆盖GET中使用相同关键字的数据。
get是从服务器 获取数据,post是提交数据到服务器。 get是吧表单中的数据添加到 action属性所指向的 url中,值和表单中的控件是一一对应的。在uri可以看到。
post是通过http post机制,将表单的各字段与内容放置到 html 的header内 一起传送到 action属性所指向的url地址中,用户是看不到的。
对于get方式,不能大于2KB,服务器端用Request.QueryString _get[''] 获取变量的值,对于post方式,服务器端用Request.Form $_POST['user_name']获取提交的数据。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
Php 笔记1-----request和 response的更多相关文章
- Request 、Response 与Server的使用
纯属记录总结,以下图片都是来自 ASP.NET笔记之 Request .Response 与Server的使用 Request Response Server 关于Server.MapPath 方法看 ...
- 运维开发笔记整理-Request对象与Response对象
运维开发笔记整理-Request对象与HttpResponse对象 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.request对象 1>.什么是request 首先,我 ...
- JavaWeb学习笔记四 request&response
HttpServletResponse 我们在创建Servlet时会覆盖service()方法,或doGet()/doPost(),这些方法都有两个参数,一个为代表请求的request和代表响应res ...
- Javaweb学习笔记——(十)——————response对象,response字符流缓冲器,响应头,状态码,重定向,requset对象,路径和乱码
请求响应对象: request和response *当服务器接收都请求后,服务器会创建request和response对象,把请求数据封装到request对象中: *然后调用Servlet的sevic ...
- #HTTP协议学习# (一)request 和response 解析
注:本文转自:http://www.cnblogs.com/TankXiao/archive/2012/02/13/2342672.html , 粉字[]内内容为个人笔记 当今web程序的开发技术真是 ...
- FiddlerScript学习一:改动Request或Response
前两天因项目须要,简单看了一下FiddlerScript,功能挺强的.今天有时间细致看一下,做个笔记. 改动Request或Response 改动Request和Response要在FiddlerSc ...
- 转 #HTTP协议学习# (一)request 和response 解析
http://www.cnblogs.com/bukudekong/p/3834020.html #HTTP协议学习# (一)request 和response 解析 注:本文转自:http:// ...
- Request 和 Response 原理
* Request 和 Response 原理: * request对象和response对象由服务器创建,我们只需要在service方法中使用这两个对象即可 * 继承体系结构: ...
- request 和response
当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等. 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了We ...
- Request和Response对象
Request 和 Response 对象起到了服务器与客户机之间的信息传递作用.Request 对象用于接收客户端浏览器提交的数据,而 Response 对象的功能则是将服务器端的数据发送到客户端浏 ...
随机推荐
- http://www.cnblogs.com/AloneSword/p/3370462.html
http://www.cnblogs.com/AloneSword/p/3370462.html
- html中offsetTop、clientTop、scrollTop、offsetTop各属性
HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth scrollHeight: 获取对象的滚动高度. scrollLeft:设置或获取位于对 ...
- 机器人学 —— 轨迹规划(Configuration Space)
之前的轨迹规划中,我们只考虑了质点,没有考虑机器人的外形与结构.直接在obstacle map 中进行轨迹规划,然而世纪情况中,机器人有固定外形,可能会和障碍物发生碰撞.此情况下,我们针对机器人自由度 ...
- 忘记导入struts2-xxx-plugin-x.x.x.jar导致服务器启动报Unable to load configuration.Caused by: Parent package is not defined: xxx-default
今天做的一个Struts2+MyFaces(JSF)+Spring的应用,为了使用JSF,我的struts.xml中使用了如下代码 <package name="jsf" e ...
- ajax练习四留言板
留言界面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...
- Win XP 如何禁用系统的自动更新
想关闭系统的自动更新. 打开[控制面板]/[安全中心],发现“自动更新”和“更改安全中心通知我的方式”,都已成了灰色,无法更改. 网上查了一下,找到了这样一个处理方法:将[服务]中一个名为“Autom ...
- 自定义Eclipse的 “宏命令”
在Eclipse中有些常用的固定的东西可以定义一个“宏命令”,就不用重复地做一些工作.就像在 Preferences > Java > Code Style > Code Templ ...
- What floating point types are available in .NET?
The C# standard only lists double and float as floating points available (those being the C# shortha ...
- C#处理文件流的转换
//----引入必要的命名空间 using System.IO; using System.Drawing.Imaging; //----代码部分----// private byte[] photo ...
- npm和bower
npm用于管理node.js 的backend依赖模块:这些模块以node的require来调用 bower用于管理frontend的js依赖模块,这些模块用<script src=" ...