PHP 文件加载的四种方式

简介: PHP 文件加载的四种方式

  • 四种方式如下所示:
  • incude "要加载的文件路径";
  • includeonce "要加载的文件路径";
  • require "要加载的文件路径";
  • requireonce "要加载的文件路径";

  • 四种方式的区别
  • inchude:每次都载入文件(可能会重复载入),如果载入失败,在报错后继续执行后续语句;
  • include_once:只载入一次(不会重复载入),如果载入失败,在报错后继续执行后续语句;
  • require:每次都载入文件(可能会重复载入),如果载入失败,在报错后终止程序;
  • require_once: 只载入一次(不会重复载入),如果载入失败,在报错后终止程序;


一般来说, 如果被载入的文件内容,是后续代码运行的必备前提,则应该使用require载入。 如果被载入的文件内容,只需要(或只允许)出现一次,则应该使用 'xxxx once" 载入。


<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <?php $file = __DIR__ . '/lib/nav.html'; // 避免重复导入,只会生效一次 // include_once 载入失败可以继续运行下面后续代码。 include_once $file; include_once $file; // 避免重复导入,只会生效一次 // require_once 载入失败则报错后终止程序。 require_once $file; require_once $file; ?> </body> </html>


  • 上面路径 “要加载的文件”,是一个文件路径,可以是相对路径,也可以是绝对(物理)路径,或直接文件名:


  • 相对路径: './文件名'; './dir/文件名'; './dir/dir/文件名'; '../../dir/文件名'; ......


  • 绝对(物理)路径: 'c:/itcast/class/php66/day4/文件名'; // window系统 '/path1/path2/文件名'; // inux、unix 等系统 ......

  • 获取物理路径(绝对路径)的方式: __DIR__:表示当前文件所在路径,由它可以构建出绝对路径; getcwd():表示当前正访问的网页路径,由它也可以构建出绝对路径;

  • 非相对非绝对路径(其实就是没有给出路径,只给出文件名) :不推荐!
  • 形式为: include 文件名;
  • 此时,会按如下顺序去寻找该文件: 1、先在 php .ini 中 include_path 项设定的目录中寻找该文件; 2、如果上一步没有找到,就在当前工作目录(由 getcwd() 获取)下寻找该文件; 3、如果上一步没有找到,就在当前载入语句的文件所在目录(由 __DIR__ 获取)下寻找; 4、如果上一步还是没有找到,就报错了。

```


DIR 当前路径为:', DIR; file=DIR.′/lib/nav.html′;echo′DIR想要载入路径为:′,file = DIR . '/lib/nav.html'; echo ' DIR 想要载入路径为:', file; include $file; // 这样也是能生效的

echo '<hr>';
echo 'getcwd() 当前路径为:', getcwd();
$file1 = getcwd() . '/lib/nav.html';
echo '<br>getcwd() 想要载入路径为:', $file1;
include $file1; // 这样也是能生效的
echo '<hr>';
echo '__DIR__ 与 getcwd() 区别:';
include 'lib/page.php';

?> ```


  • page.php:

__DIR__ 获取当前文件路径:'; echo '
' . __DIR__; echo '
getcwd() 获取当前浏览网页的路径,也就是你当前浏览访问的页面在的路径,而不是当前文件的路径:'; echo '
' . getcwd(); ?>


相关文章
|
1月前
thinkphp5.1隐藏index.php入口文件
thinkphp5.1隐藏index.php入口文件
30 0
thinkphp5.1隐藏index.php入口文件
|
3月前
|
PHP 数据安全/隐私保护
php案例:判断这个文件是什么编程语言代码的文件(判断java或者php)
php案例:判断这个文件是什么编程语言代码的文件(判断java或者php)
php案例:判断这个文件是什么编程语言代码的文件(判断java或者php)
php案例:用代码的方式创建目录+文件+写入数据(都由你定)
php案例:用代码的方式创建目录+文件+写入数据(都由你定)
php案例:用代码的方式创建目录+文件+写入数据(都由你定)