想找教程的朋友请查阅死亡之书,学习基础教程之前请先看下PHP基本符号,帮助了解。本教程适合有一点语言常识的人看,无基础也可,学习PHP贵在坚持,重在实践,学到的东西要经常拿出来写,别人教的代码即使不懂什么意思也要写到面熟为止,有什么问题尽管留言给我,能帮忙解决的小弟第一时间处理,再一次感谢大家的光临!(注意:打开某些文章会有帐号密码输入框,大家直接点取消就好了,想要看图片的,我会尽快把图片连接修改掉的.)
PHP入门教程之包含文件
上一篇 /
下一篇 2006-11-23 06:56:26
/ 个人分类:PHP学习经验
到目前为止,编写的每个脚本都是自含的,所有代码都放在一个 PHP 文件中。这一节将讨论如何把代码组织到多个文件中。将那些在多个页面中使用的代码段取出来,放在单独的文件中,然后将其包括到原来的页面中。
PHP 提供了两种包含文件的方法。其中一种方法用于包括支持文件,如界面元素;另一种方法用于包括至关重要的文件,如页面中调用的函数。
首先创建最终将包括的文件。无论何时创建网站,要做的第一件事就是创建包含主要界面元素的头文件和脚文件。这样就可以创建任意多数量的页面,在编码完成之前,无需担心页面是什么样子。界面只需要创建一次即可,可以将它放在 include 文件中,整个站点都会立即更新。
因此,首先要创建一个 top.txt 文件,并添加以下内容:
<html>
<head>
<title>Workflow System</title>
</head>
<body>
<table>
<tr><td colspan="2"><h2>The Workflow System</h2></td></tr>
<tr>
<td width="30%">
<h3>Navigation</h3>
<p><a href="register.php">Register</a></p>
</td>
<td>
在另一个 bottom.txt 文件中输入以下内容:
</td>
</tr>
</table>
</body>
</html>
将这两个文件和 registration.php 保存在同一目录中。
现在将这些文件添加到 registration 页面,修改 registration.php 如下:
<?php
include("top.txt");
?><h1>Register for an Account:</h1>
<form action="registration_action.php" method="POST">
Username: <input type="text" name="name" /><br />
Email: <input type="text" name="email" /><br />
Password: <input type="password" name="pword[]" /><br />
Password (again): <input type="password" name="pword[]" /><br />
<input type="submit" value="GO" />
</form><?php
include("bottom.txt");
?>
要注意,这里已经删除了通常包围页面内容的 HTML,代之以包含上述文件的命令。下面看看结果如何。
如果让浏览器再次回到注册页,就会看到不同的外观,如图 14 所示。
图 14. 新的注册页

如果从该页中“查看源代码”,可以看到三个文件都合并到了输出中:
<html>
<head>
<title>Workflow System</title>
</head>
<body>
<table>
<tr><td colspan="2"><h2>The Workflow System</h2></td></tr>
<tr>
<td width="30%">
<h3>Navigation</h3>
<p><a href="register.php">Register</a></p>
</td>
<td>
<h1>Register for an Account:</h1>
<form action="registration_action.php" method="POST">
Username: <input type="text" name="name" /><br />
Email: <input type="text" name="email" /><br />
Password: <input type="password" name="pword[]" /><br />
Password (again): <input type="password" name="pword[]" /><br />
<input type="submit" value="GO" />
</form>
</td>
</tr>
</table>
</body>
</html>
如果对 registration_action.php 做同样修改,然后提交表单,就会看到所做的更改立刻起作用了。
这个页面虽然算不上出色,但是也不错了。以后可以让设计师进行美化,而您所要做的修改只有一次,即 include 文件,而不是站点中的每个页面。
如果 PHP 找不到界面文件,那么这是一个问题,但不一定是灾难性的问题,特别是重点关心的是应用程序的功能的时候。因此,如果 PHP 找不到include()函数指定的文件,那么它会先发出一条警告消息,并继续处理页面。
但是有些情况下,找不到包含文件是灾难性的问题。比如,可以将validate()和db_connect()脚本放在单独的文件中,然后在 registration_action.php 中包含该文件。如果 PHP 找不到该文件,问题就大了,因为要在页面中调用这些函数。为了避免这种情况,可使用require()函数代替include():
<?php
include("top.txt");require("scrīpts.txt");?>
<p>You entered:</p>
<?php
foreach ($_POST as $key=>$value) {
echo "<p>".$key." = " . $value . "</p>";
}
$passwords = $_POST["pword"];
echo "First password = ".$passwords[0];
echo "<br />";
echo "Second password = ".$passwords[1];
if (validate($_POST) == "OK") {
echo "<p>Thank you for registering!</p>";
...
如果 PHP 找不到必需的文件,就会发送致命错误消息,并中止处理。
没有什么能禁止您在文件中除包含本身外又包含另一个文件。事实上,这些包含文件的不固定性可能造成混乱,有可能造成不小心多次包含同一文件。这种重复有可能造成界面元素反复出现,或者由于函数或变量的重定义而导致错误。为此,PHP 提供了特殊版本的include()和require()函数。比如,可以确保 registration_action.php 文件仅加载这些文件一次:
<?php
include_once("top.txt");
require_once("scrīpts.txt");
?>
<p>You entered:</p>
<?php
foreach ($_POST as $key=>$value) {
echo "<p>".$key." = " . $value . "</p>";
}
...
如果 PHP 遇到include_once()或require_once()函数,就会在重复包含该文件之前检查是否已经包含该文件。
导入论坛
收藏
分享给好友
管理
举报
TAG:
PHP
包含文件
引用
引用文件
PHP学习经验