php内置函数-文件包含的函数

目录

1.include

2.require

3.include_once

[4. require_once](#4. require_once)


1.include

可以将别的文件直接引用过来(被引用的文件含有打印代码的话,会直接打印),如果失败了,会返回一条警告,文件会继续执行下去,通常用于动态包含。

如下,我建两个 php 文件,一个写有函数声明的文件,一个函数调用的文件

所以被引用的文件一般不写打印的代码,直接写函数声明即可

include 引用失败的话,会返回警告,并继续执行下去,如下

function.php 文件

php 复制代码
<?php
header("Content-Type: text/html; charset=utf-8");
	
	// 函数声明,$a, $b用于接收传来的参数
	function add($a, $b) {
		$c = $a + $b;
		return $c;
	}

?>

引用成功情况下

php 复制代码
<?php 
header("Content-Type: text/html; charset=utf-8");

echo "开始调用".'<br>';
include('function.php');

	$t = add(3,4);
	echo "计算结果为:".$t.'<br>';
	echo "调用结束".'<br>';
?>

引用失败(将路径写错)情况下

php 复制代码
<?php 
header("Content-Type: text/html; charset=utf-8");

echo "开始调用".'<br>';
include('functions.php');//这里我引用错误,会继续往下执行
	
	echo "下面有结果就引用成功,没有就是失败".'<br>';

	$t = add(3,4);//因为上面引用失败,所以这里也会因为失败而结束后面的程序
	echo "计算结果为:".$t.'<br>';
	echo "调用结束".'<br>';
?>

2.require

用于文件引用,如果引用失败,代码就不会继续往下执行;通常包含极为重要的文件

1)引用成功下

php 复制代码
<?php 
header("Content-Type: text/html; charset=utf-8");

echo "开始调用".'<br>';
require('function.php');
	
	echo "下面有结果就引用成功,没有就是失败".'<br>';

	$t = add(3,4);
	echo "计算结果为:".$t.'<br>';
	echo "调用结束".'<br>';
?>

2)引用失败情况下,我的文件function是正确的,我修改成functions ,所以错误

php 复制代码
<?php 
header("Content-Type: text/html; charset=utf-8");

echo "开始调用".'<br>';
require('functions.php');//这里我引用错误,强制停止后续代码
	
	echo "下面有结果就引用成功,没有就是失败".'<br>';

	$t = add(3,4);
	echo "计算结果为:".$t.'<br>';
	echo "调用结束".'<br>';
?>

从运行结果得知,require 会强制停止后续代码

3.include_once

可以以将别的文件直接引用过来(被引用的文件含有打印代码的话,会直接打印),如果失败了,会返回一条警告,文件会继续执行下去;

他会做 once 次检测,如果文件曾经已经被被包含过,不再包含。

简单来讲就是防止"俄罗斯套娃"

4. require_once

用于文件引用,如果引用失败,代码就不会继续往下执行;通常包含极为重要的文件;会做一次once检测,防止文件反复被包含

相关推荐
碎碎念的安静1 分钟前
WPF 与 Qt 进程间通信(IPC)
开发语言·qt·wpf
boonya15 分钟前
Spring AI 深度实践教程:从“能用”到“用好”
开发语言·python
(Charon)16 分钟前
【Qt/C++】Qt/C++ 中 :: 和 . 到底有什么区别?
开发语言·c++·qt
REDcker19 分钟前
C++跨平台与跨语言绑定工具:SWIG、Djinni 等选型
开发语言·c++
傻啦嘿哟22 分钟前
Python 操作 Word 文档属性与字数统计方法详解
开发语言·c#
郝学胜-神的一滴28 分钟前
[ 力扣 1124 ] 解锁最长良好时段问题:前缀和+哈希表的优雅解法
java·开发语言·数据结构·python·算法·leetcode·散列表
戴西软件29 分钟前
戴西CAxWorks.VPG车辆工程仿真软件|假人+座椅双调整 汽车仿真效率直接拉满
java·开发语言·人工智能·python·算法·ui·汽车
北漂Zachary30 分钟前
PHP vs C++ vs 易语言:三大语言对比解析
开发语言·c++·php
FeBaby36 分钟前
使用mat 分析java OOM问题
java·开发语言
无限进步_40 分钟前
二叉树的中序遍历(非递归实现)
开发语言·数据结构·c++·windows·算法·visual studio