本篇文章为大家展示了php中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:
$a=123;
?>
b.php:
require_once("a.php");
?>
c.php:
require_once("b.php");
echo $a;
?>
require_once 与require的区别:
require_once 只会加载同一个文件一次,require会加载多次。
相信和我一样的小白还是有些疑惑吧。于是我们猜想:如果456.php引入过123.php,现在文件test_require.php引入了“456.php”与“123.php”。如果是使用require方法,那么在test_require.php中,123.php将被引入2次,而使用require_once方法123.php被引入一次。那么我们做实验吧!
一、require方法
123.php的内容如下:
1
2
echo "123\n";
456.php内容如下:
require("123.php");
echo "456\n";
test_require.php的内容如下:
require("123.php");
require("456.php");
运行test_require.php。
二、require_once方法
123.php内容不变。456.php和test_require.php更改require_once方法。内容如下:
//456.php
require_once "123.php";
echo "456\n";
//test_require.php
require_once "123.php";
require_once "456.php";
运行test_require.php,结果如下:
三、混用出错
如果,在456.php中使用require方法,而在require_once方法,那么require_once将会失效。三个文件代码如下:
//123.php
echo "123\n";
//456.php
require "123.php";
echo "456\n";
//test_require.php
require_once "123.php";
require_once "456.php";
上述内容就是php中require_once如何使用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。