表A

上一篇 / 下一篇  2008-02-27 14:42:56

表A

这段简单的代码必须做三件事情:

  • 使用PHP include()函数来包含
    <!-- display.php 这个Web页面的风格由一个配置文件决定 --> 
    <html> 
    <head> 
    <title>Mood Page</title>
    </head> 
    <?php
     include("displayconf.php");
     $required_file = $display.".php";
     require $required_file;
    ?>
    <br><br>
    <center>This is the best "mood page" ever!</center>
    </font>
    </body>
    </html>
    
    Displayconf.php中的变量并对它们进行求值。
  • 创建一个表示用户请求的文件名的变量。在我们这个例子中,Displayconf.php文件里定义的变量$display被求值,然后加上.php后缀。(这是由我们的逻辑完成的。)
  • 使用PHP的require()函数显示正确的包含文件里的内容。

你应该注意到在我们的伸缩门例子中,PHP require()函数和include()函数是完全可以互换的。这两个函数之间主要的区别在于目标文件处理的方式不同。一个require()语句将会由它所调用的文件替换。这意味着在一个循环当中,远程的文件只会被调用一次。而另一方面,在每次遇到include()函数的时候,它都会被重新求值。这意味着在一个循环的过程中,文件将在每一次循环过程中都被访问一次,而且在包括文件中设置的变量每次都会更新。

在这个例子中,我试图讲清楚什么时候使用什么函数合适。对于文件Displayconf.php,很有可能它里面的变量值已经改变。毕竟,这是一个配置文件。因此,我选择了include()函数。而另一方面,$required文件在交互的过程中很有可能不会改变。如果用户请求的是不同的文件体,那么我们有可能会创建一个新的文件再把它包括进来,所以我使用require()函数。

高级用户可能希望看看PHP的手册来了解更多的关于函数require_once() 和 include_once() 的信息以便能够对文件处理和配置文件变量的管理进行更好的控制。

表B 显示了我们的配置文件,Displayconf.php。(为了简单化的目的,我们将把所有的文件放在和Web服务器相同的目录下。)我们在这里要做的就是将$display变量设置成一个可选的值。

表B

<?php
# displayconf.php # display.php 的配置文件 # ------------------------------------------------- # 将变量 $display 设置成下列值之一: # happy, sad, 或者 generic $display = "happy"; ?>

最后我们需要一些内容文件--对应配置文件中的每一个选项。因为这些内容都是静态的HTML,所以我们不需要在文件里加上PHP脚标。当你在PHP里使用include()或者require()函数的时候,被调用的文件在处理过程开始的时候被跳过然后在处理结束的时候被加进来。

"happy"文件内容(happy.php)
<body bgcolor=pink text=yellow>
<font size="+5">

"Sad" 文件内容 (sad.php)
<body bgcolor=blue text=white>
<font face="arial, helvetica" size="+5">

"Generic" 文件内容 (generic.php)
<body bgcolor=white text=black>
<font face="courier" size="+5">

当你单击页面Display.php的时候,这个页面的外观和感受将会根据你在配置文件中输入的值而改变。卷帘门总结

在本文中,我们讨论了动态信息的基础知识并使用一个脚本来创建由文件驱动的动态内容。特别的是,我们使用include() 和 require() PHP函数来提取和发送我们的数据。

下面是一些最后的话。虽然我相信你一定熟悉WAI Web编程指南,但是你也许还应该看看W3C对于动态内容所说的支配以及用户对它的访问能力。你可能还要看看PHP手册中的这一章“使用远程文件”来学习如何使用FTP来提取配置数据。


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2009-01-09  
    123
45678910
11121314151617
18192021222324
25262728293031

数据统计

  • 访问量: 369
  • 日志数: 8
  • 建立时间: 2008-02-27
  • 更新时间: 2008-06-30

RSS订阅

Open Toolbar