使用PHP实现动态网页
核心提示:PHP编程,PHP教程,PHP5教程,PHP开发
据Merriam-WebsterOnline地解释,动态1词的意思是网页的内容由“通常是连续的和实时天生的活动或改变的信息组成。”因此当我们谈论动态数据的时候,我们也就是在谈论作为Web页面发送给用户的信息是由不同的源数据组合而成的。这与静态网页的概念是相对的,静态网页的内容其实不依托用户输进的数据而改变而且通常是直接解析给用户。Web页面上的动态信息有3种主要的类型:动态数据--在1个Web页面里产生的变量。
动态Web页面--全部Web页面都是动态天生的。
动态内容--Web页面的1部份是动态天生的。
你假设希看对动态内容产生的进程进行细微的控制,就象动态数据的那种类型1样,那末数据处理的进程就会复杂1些。而假设你想天生大范围的信息,就象动态Web页面的天生那样,那末程序的逻辑就会变得复杂。动态内容的天生是这两种方式的折衷,它能够让我们使用两个很有用的PHP函数,include()和require()。
要记住,你在后端加进的逻辑越多,那末你的Web站点的性能将会损失得越严重。荣幸的是,PHP能够很流畅的进行预处理进程,所以当我在处理动态内容和数据的时候都尽可能多的使用PHP的功能。
数据源和PHP功能
所有的动态内容都有1个共同点:它们从1个原始页面之外的数据源而来。图A列出了1些常见的数据源和用来处理它们的相应的PHP函数。
FigureA
数据源
PHP函数
注释
User
$HTTP_POST_VARS
$HTTP_GET_VARS
这些函数处理由用户通过Web表单直接输进的数据。
Database(localorremote)
example:
mysql_fetch_array()
这些都只是PHP很多数据库访问函数中的1部份,很多函数是为每个不同的数据库特别编写的。你能够在PHP函数参考手册里找到这些函数的完全列表。
Remotefile
fopen(),fclose()
fgets(),fputs()
这些函数处理1个远程服务器上文件中的数据,这个文件可以通过FTP访问。
Localfile
include(),require()
fopen(),fclose()
这些函数处理位于本地服务器上的文件中的数据,比方说配置文件。
常见的数据源和处理它们的PHP函数
在这篇文章“教程:PHP起步中,”我们观看了1个演示的脚本,这个脚本要求用户输进他们最喜欢的数字。根据用户输进的结果,我们在Web页面上显示1条消息。这就是1个由用户驱动的动态Web内容的例子。从Web表单返回的结果将决定显示的内容。1个更复杂的例子是“点击流程”利用程序,这个程序能够根据1个用户在Web站点上访问过的页面来决定向他或她发送甚么广告。
1旦数据已输进,不管它是由用户或其它的方式输进的,将会被保存在1个数据库中并在以后重新使用。假设它被用来决定显示的内容,那末这些内容将可以被以为是“由数据库驱动的动态内容。”我们将在下1篇文章中更仔细的看看这类类型的动态信息。目前,让我们先视察1个由文件驱动的动态内容的简单的PHP脚本的例子。我们将使用基于1个配置文件的逻辑来决定在Web页面上应当显示甚么样的页面风格和字体。我们选择的页面风格将会在用户要求Web页面的时候显示出来。(这里我想就包括文件的例子给你提个醒:你真的应当在这个例子中为完成要求的功能而使用风格页。)
例子程序:Display.php
Display脚本使用1个独立的配置文件来包括变量值和几个含有HTML的变量部份的包括文件。固然这看起来不是特别动态,但是你能够轻易的要求用户使用Web表单来创建1个配置文件并使用1定的逻辑来判定应当加载哪1个配置文件,等等。(我们在“理解PHP的函数和类”这篇文章中所作的讨论将帮助你完成这个工作。)
由于本文的目的所限,我们将跳过这方面的处理进程并尽可能使它简化。表A展现了我们的主页面,和你通过浏览器调用的页面,Display.php。(PHP代码将用粗体进行显示。)
表A
这段简单的代码必须做3件事情:
使用PHPinclude()函数来包括
include("displayconf.php");
$required_file=$display.".php";
require$required_file;
?>