require_once 语句的使用方法

2020-06-01 cfan 互联网
浏览

require_once 语句的使用方法
require_once 语句和 require 语句完全相同,唯一区别是 PHP 会检查该文件是否已经被包含过,如果是则不会再次包含。
 
参见 include_once 的文档来理解 _once 的含义,并理解与没有 _once 时候有什么不同。
 
有一个文件a.php,里面有一个变量$var=1;我在b.php 中用require_once()函数引用了a.php文件,然后我在c.php 中用require_once()引用了b.php文件,在c.php中有一个函数 需要引用a.php中的变量$var. 但却访问不了 变量的值为空
如果我想访问变量$var该怎么做。
 
require_once() 为了避免重复加载文件。 意为:加载文件一次
 
require_once() 语句在脚本执行期间包括并运行指定文件。此行为和 require() 语句类似,唯一区别是如果该文件中的代码已经被包括了,则不会再次包括。
 
一般都用在包含文件的时候,比如你写了一个类文件a.php,这个文件主要是定义类,代码可能如下:
 
class p
{
 public $a;
 function make(}
 {
  echo $a;
 }
}
 
这个时候你在文件b.php中要使用到该类,就可以再b.php开头加上,require_once(a.php);来加载这个a.php,就相当于把a.php的文件的代码复制到了b.php中。
 
类似的方法还有requeire(),include(),include_once()其中带_once字样的方法都是声明只加载一次,因为你require_once()的别文件中可能已经require_once(a.php)了,如果再加载就造成重复加载,代码量会增加造成解析减慢。
 
我帮你测试过了,没有问题,require_once就行
 
a.php:
<?php
$a=123;
?>
b.php:
<?php
require_once("a.php");
?>
c.php:
<?php
require_once("b.php");
echo $a;
?>
 
你检查一下你的代码,哪里出了小问题。