当前位置: 首页 > 图文教程 > 网络编程 > PHP > 长沙发上的对话(一)

PHP
php 多线程上下文中安全写文件实现代码
PHP类的使用 实例代码讲解
用php实现让页面只能被百度gogole蜘蛛访问的方法
php 学习笔记
PHP编程过程中需要了解的this,self,parent的区别
php 操作excel文件的方法小结
使用PHP获取网络文件的实现代码
PHP 巧用数组降低程序的时间复杂度
php下将XML转换为数组
php 文件上传代码(限制jpg文件)
php 无极分类(递归)实现代码
PHP 采集获取指定网址的内容
PHP 将图片按创建时间进行分类存储的实现代码
PHP 存储文本换行实现方法
PHP 批量更新网页内容实现代码
用PHP查询搜索引擎排名位置的代码
用php实现的获取网页中的图片并保存到本地的代码
php实现首页链接查询 友情链接检查的代码
处理php自动反斜杠的函数代码
php实现的遍历文件夹下所有文件,编辑删除

PHP 中的 长沙发上的对话(一)


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

       长沙发上的对话(一)
  译者:limodou
  
  开始治疗
  
  心理医生: 好。你今天感觉怎么样,维克多?
  
  病人: 不太好,医生。我近来感到有点忧郁...
  
  心理医生: 那是为什么,维克多?
  
  病人: 我不知道,医生。我睡眠不太好,而且我一点胃口也没有。有一天我们去一个意大利餐馆,要了通心面 -- 但时当他们把它端上来的时候,我一点也吃不下去。我就一直看着它,在我的头里一直回荡着“女高音”的主题曲...
  
  心理医生: 家里怎么样?
  
  病人: 都很好,我想。Marge大部分时间都在厨房,试她从网上下载的菜谱。孩子们每天很早就出去了,一般在吃饭时才看得见他们,但是现在他们开始在Burger King吃了。那我也不能责备他们。
  
  心理医生: 工作 - 都很好吧?
  
  病人: 不太好 - 我有一个虐待成性的魔鬼老板,他打算打我的生活变成象Dilbert Zone一样!
  
  心理医生: 跟我说一说他吧。
  
  病人: 好,你知道我是做什么的 - 我是一个在Used Socks. Inc.的web程序员。下个星期我们的新网站就要使用了,我们正在做着完全不同的东西 -- 一个在线商店,供人们出售他们的旧物。我们得到了一些好心人的投资 - 6百万元,如果我们成为在web最受欢迎的旧物门户,我们还可得到更多的投资。
  
  心理医生: 听上去对你不错嘛。
  
  病人: 你说的对。但是,然后有一天老板进来,他说他交给我一项开发在线商店购物车的工作。他明确地要求我用什么叫“session”的东西。当然,只不过让事情变得有趣,他说他想在两天内做完并能运行...虐待狂、变态!
  
  心理医生: 有问题吗?
  
  病人: 有,特别是首先我根本不知道“session”是什么,或怎么去用它。我意思是说,我原以为一个session 就是对一个病人的短期治疗 -- 有一点象我们正在做的一样。
  
  心理医生: 哦,维克多,维克多...这就是麻烦你的事吗?我想我可能有东西能帮助你...
  西雅图无状态
  
    开低级玩笑的人为了给能听到谈话的年轻女性留下印象,互相之间最经常说的事情之一就是:“HTTP是一种无状态协议,Internet是无状态开发环境”。用简单的话来讲,HTTP(HyperText Transfer Protocal )协议,作为web的骨干,不能够记住与一个网站连接用户的身份,所以对web页的请求被看作是唯一和独立的连接,与在它之前的连接无论如何都没有关系 -- 这一点与今天很多爱冒险的十几岁的年轻人的行为很象,他们每天喝到深夜,第二天早晨醒来对发生过什么都不记得了,晚上再出去做同样的事,一遍又一遍...
  
    现在,如果你是漫无目的地从一个站点冲浪到另一个,没有什么问题。但是当你想从Amazon.com上买几本书会怎么样呢?“在一个无状态的环境中,记住所有在你的购物单上的物品是非常困难的,因为HTTP协议的这种无状态的性质使得跟踪选中物品是不可能的。
  
    因此就要求一种能够使记住状态成为可能的方法,能够跟踪用户的连接并且保存连接特定数据的东西。因此产生了“cookie”,它可以允许Web 站点在客户系统的一个文件中保存客户特定信息,并且当任何时候请求时都可以从文件中取出信息。所以,在上面的购物车例子中,被选中的商品可以加到cookie中,并且在消费者结帐时,可以被取出并呈现在购物单中。
  
    基于cookie的解决方案存在一个问题,那就是它要求cookie能够被客户所接受。所以,有另一种解决办法就是使用“session”,当一个客户访问一个Web站点时,用它来保存特定的一小块数据。这个会话(session)数据在整个访问期间被保存下来。一个session可以被看成一个信息篮,它保存着主机的变量对。这些变量对在整个访间期间都存在,并且可以在任何时刻被处理。这个方法对协议的无状态的特点提供了一流的解决办法,并且在今天很多大型的网站上,可以跟踪和保存信息,用于个人和商业交易。
  
    每一个被创建的session 都有一个唯一的标识串,这个串被发送到客户端,同时在服务端也生成了同样唯一标识串的入口,或者放在文本文件或者在一个数据库中。现在就可以注册任何的session 变量 -- 这些普通的变量可以保存文本或数值信息,可以通过session 被读出,或写入。
  
    现在,如果你已经跟随着开放源码运动,你已经知道了PHP ,在这个星球上最热门的脚本语言。最新的版本是PHP4,包括了对session的创建和管理的支持,