赞
踩
1.2 PHP是如何使页面实现动态效果的
PHP最初是被设计成嵌入网页的HTML中的,这也是它仍被经常使用的方式。例如,如果你想要把当前年份显示到一个版权声明中,可以把以下代码加入页脚中:
©<?phpecho date('Y'); ?>PHP Solutions
在一个支持PHP的Web服务器中,标记之中的代码是自动处理的,并且像下面这样显示年份:
这只是一个简单的例子,但是它说明了使用PHP的一些好处。
你可以不必担心需要更新版权声明,尽情地享受新年派对吧。任何在午夜来临之后访问你的网站的人都会看到正确的年份。
与使用JavaScript显示日期不同,这个过程是在Web服务器上完成的,所以它并不依赖于用户的浏览器是否启用JavaScript。
日期是由Web服务器计算出来的,因此如果用户电脑上的时间设置错误的话它也不会受到影响。
尽管像这样将PHP代码嵌入HTML中很方便,但这通常会导致重复输入相同的代码,这很麻烦而且会导致错误。还会使得网页难于维护,尤其是当你开始使用更加复杂的PHP代码时。因此,通常的做法是将许多动态的代码储存在独立的文件中,并且使用PHP通过这些不同组件来生成页面。这些独立的文件,或通常称为包含文件(include file),可以只包含PHP,或只包含HTML,或是这两种都包含。
开始时可能很难适应这种操作方式,但是它的效率要高得多。举一个简单的例子,你可以将网站的导航菜单放入一个包含文件中,并且使用PHP使其包含在每个页面中。但凡需要对这个菜单进行任何修改时,你都只需编辑一个文件--包含文件,所做的修改就会自动地体现在每一个包含这个菜单的页面中。想象一下在一个由数十个页面组成的网站中,这将会节省多少时间。
在普通的HTML页面中,Web开发人员在设计时就将内容固定在页面中并且上传到Web服务器上。当有人访问这个页面时,Web服务器只是发送这个HTML和其他相关内容,如图像和样式表。这是一种简单的事务--请求来自于浏览器,固定的内容由服务器发送回来。当你使用PHP创建网页时,还有许多其他的过程。图1-1显示了都发生了什么。
(点击查看大图)图1-1 Web服务器动态地生成每个PHP页面来响应请求
访问用PHP构建的网站时,它会启动以下事件序列。
(1) 浏览器向Web服务器发送一个请求。
(2) Web服务器将请求提交给嵌入到服务器中的PHP引擎。
(3) PHP引擎处理代码。在许多情况下,在生成页面之前可能还会查询数据库。
(4) 服务器将完成的页面传回给浏览器。
这个过程通常只需要零点零几秒,因此PHP网站的访问者感觉不到任何的延迟。由于每个页面都是单独生成的,PHP页面可以响应用户输入,当用户登录时显示不同的内容或显示出数据库搜索的结果。
创建能够独立思考的页面
PHP是一种服务器端语言(server-side language)。PHP代码保留在Web服务器上。在处理完成后,服务器只发送脚本的输出。通常这是HTML,但是PHP也可以用于生成其他的Web语言,如XML(Extensible Markup Language,可扩展标记语言)。
PHP允许我们将逻辑引入网页中。这种逻辑来源有两种。其中一些决策是基于PHP从服务器收集的信息:日期、时间、星期几、页面的URL中的信息,等等。如果是星期三,就显示星期三的电视节目表。其他时候,决策则是基于PHP从在线表单中提取的用户输入。如果你在网站上注册,则显示你的个人信息,等等。
结果,可以通过一个脚本来创建无数种输出。例如,如果你访问我的博客http://foundation- php.com/blog/(如图1-2所示),并且单击各种内部链接,你看到的通常是显示不同内容的同一个页面。诚然,我往往总是写一些相同类型的主题,但这是我的错误,而不是PHP的。
(点击查看大图)图1-2 博客是最适合使用PHP的站点
【责任编辑:book TEL:(010)68476606】
点赞 0
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。