Php 简明教程
PHP - File Include
PHP 中的 include statement 类似于 Java 或 Python 中的 import statement 、C/C++ 中的 #include directive 。但是,在 PHP 中包含语句工作方式上略有不同。
Java/Python 中的导入或 C/C++ 中的 #include 只将一个或多个语言结构(例如函数或类)从一个文件中加载到当前文件中。相比之下,PHP 中的 include 语句将另一个文件中的一切引入现有 PHP 脚本。它可能是 PHP 代码、文本文件、HTML 标记等。
The "include" Statement in PHP
以下是 PHP 中 include 语句如何工作的一个典型示例:
test.php
<?php
include 'myfile.php';
# PHP script in test.php
?>
PHP 中的 include 关键字非常方便,尤其当你需要在项目中跨多个 PHP 脚本使用相同的 PHP 代码(函数或类)或 HTML 标记时。一个典型的例子是创建应出现在 Web 应用程序所有页面中的菜单。
假设你想为网站创建一个通用菜单。然后,创建一个名为“menu.php”的文件,其内容如下。
<a href="http://www.tutorialspoint.com/index.htm">Home</a> -
<a href="http://www.tutorialspoint.com/ebxml">ebXML</a> -
<a href="http://www.tutorialspoint.com/ajax">AJAX</a> -
<a href="http://www.tutorialspoint.com/perl">PERL</a> <br />
现在创建任意多页面并包含此文件以创建头部。例如,现在你的“test.php”文件可以具有以下内容:
<html>
<body>
<?php include("menu.php"); ?>
<p>This is an example to show how to include PHP file!</p>
</body>
</html>
这两个文件假定存在于 XAMPP 服务器的文档根目录中。访问 http://localhost/test.php URL。它将生成以下内容 output :
当 PHP 解析器遇到 include 关键字时,它会尝试在当前脚本正在执行的同一目录中找到指定文件。如果未找到,则搜索“php.ini”的“include_path”设置中的目录。
当包含一个文件时,它包含的代码会继承包含所在行可变的范围。呼叫文件中该行可用的任何变量都将在从该点开始的呼叫文件中可用。但是,在包含文件中定义的所有函数和类都具有全局范围。
Example
在以下示例中,我们有一个“myname.php”脚本,其中声明了两个变量。它包含在另一个脚本 test.php 中。变量以全局范围加载。
myname.php
<?php
$color = 'green';
$fruit = 'apple';
?>
test.php
<?php
include "myname.php";
echo "<h2>$fname $lname</h2>";
?>
当浏览器访问 http://localhost/test.php 时,它显示:
Ravi Teja
然而,如果文件包含在函数内部,则变量仅成为函数局部范围的一部分。
myname.php
<?php
$color = 'green';
$fruit = 'apple';
?>
test.php
<?php
function showname() {
include "myname.php";
}
echo "<h2>$fname $lname</h2>";
?>
现在当浏览器访问 http://localhost/test.php 时,它显示未定义的变量警告:
Warning: Undefined variable $fname in C:\xampp\htdocs\test.php on line 7
Warning: Undefined variable $lname in C:\xampp\htdocs\test.php on line 7