php基础之文件载入过程 路径及四种载入关键词区别

2024-05-12 11:08

本文主要是介绍php基础之文件载入过程 路径及四种载入关键词区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

php文件加载在项目中比较常用,下面简单介绍一下四个加载关键词(区别)、文件路径、执行过程等。

  • 四个加载文件关键词分别为:include include_once require require_once
  • 使用形式相同,eg. include “目标文件的路径” 或 include(“目标文件的路径”)
  • 含义几乎相同,只不过在加载失败或是否需要重复加载方面,含义有所不同
  • 可以加载html或php文件

文件的加载路径

以include为例,其他三种加载路径是一样的。

相对路径
  • 指相对于当前文件来说的,主要有以下两个特殊的路径符号:
    • ./:当前文件所在位置的目录
    • ../:当前文件的所在位置的上一级目录
  • 示例如下
// 使用相对路径引入文件
include "./page01.php";
绝对路径
  • 本地绝对路径,如d:/test/01.php,一般来说,不应该在代码中这么写,因为程序是要发布到线上,而不是本地的。同时,可以采用如下方式,进行引用:
// 使用绝对路径引入文件,方式一:
include __DIR__ . '\page01.php';//使用绝对路径方式引入文件,方式二:
include $_SERVER['DOCUMENT_ROOT'] . '\zhonglq\page01.php';
  • 网页绝对路径
    如:http://www.baidu.com/test.php
无路径

如:

include "page01.php";

默认会从当前文件所在的目录中找,不推荐使用。

文件载入过程

  1. 从include语句开始,退出php脚本模式,进入html代码模式
  2. 载入include语句中所设定的文件中的代码,并执行
  3. 加载执行完文件中的代码后,重新进入php脚本模式,继续执行之后的代码

四个载入语句的区别

  • include(include_once)载入文件时,如果文件没找到,会报一个错误提示,然后继续执行后面的代码
  • require(require_once)载入文件时,如果文件没有找到,会报错并终止后面代码的执行
  • include(require)载入的文件不判断是否重复,只要有include(require)语句,就载入一遍
  • include_once(require_once)载入文件的时候,会有一个内部判断机制,判断该文件之前是否载入过,如果载入过就不再再次载入该文件了。

被载入文件return语句相关

  • 载入一个文件,如果载入成功,返回值为1,如果载入失败,返回false
  • 如果被载入文件中有return语句,那么被载入文件return后面的语句都不再执行
  • return语句也可以作用于被载入文件时返回给调用方的一个数据值

如下为被载入文件page03.php:

echo "this is page03 start";
return 5;
echo "<br>";
echo "this is page03 end";

如下为调用方代码:

$result = include("./page03.php");
var_dump($result);

输入结果为:

int 5

好了,php载入文件关键词语句及相关介绍,就简单整理到这了~

这篇关于php基础之文件载入过程 路径及四种载入关键词区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/982459

相关文章

最新版IDEA配置 Tomcat的详细过程

《最新版IDEA配置Tomcat的详细过程》本文介绍如何在IDEA中配置Tomcat服务器,并创建Web项目,首先检查Tomcat是否安装完成,然后在IDEA中创建Web项目并添加Web结构,接着,... 目录配置tomcat第一步,先给项目添加Web结构查看端口号配置tomcat    先检查自己的to

SpringBoot集成SOL链的详细过程

《SpringBoot集成SOL链的详细过程》Solanaj是一个用于与Solana区块链交互的Java库,它为Java开发者提供了一套功能丰富的API,使得在Java环境中可以轻松构建与Solana... 目录一、什么是solanaj?二、Pom依赖三、主要类3.1 RpcClient3.2 Public

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

结构体和联合体的区别及说明

《结构体和联合体的区别及说明》文章主要介绍了C语言中的结构体和联合体,结构体是一种自定义的复合数据类型,可以包含多个成员,每个成员可以是不同的数据类型,联合体是一种特殊的数据结构,可以在内存中共享同一... 目录结构体和联合体的区别1. 结构体(Struct)2. 联合体(Union)3. 联合体与结构体的

SpringBoot整合kaptcha验证码过程(复制粘贴即可用)

《SpringBoot整合kaptcha验证码过程(复制粘贴即可用)》本文介绍了如何在SpringBoot项目中整合Kaptcha验证码实现,通过配置和编写相应的Controller、工具类以及前端页... 目录SpringBoot整合kaptcha验证码程序目录参考有两种方式在springboot中使用k

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入

python获取当前文件和目录路径的方法详解

《python获取当前文件和目录路径的方法详解》:本文主要介绍Python中获取当前文件路径和目录的方法,包括使用__file__关键字、os.path.abspath、os.path.realp... 目录1、获取当前文件路径2、获取当前文件所在目录3、os.path.abspath和os.path.re

python中json.dumps和json.dump区别

《python中json.dumps和json.dump区别》json.dumps将Python对象序列化为JSON字符串,json.dump直接将Python对象序列化写入文件,本文就来介绍一下两个... 目录1、json.dumps和json.dump的区别2、使用 json.dumps() 然后写入文

SpringBoot整合InfluxDB的详细过程

《SpringBoot整合InfluxDB的详细过程》InfluxDB是一个开源的时间序列数据库,由Go语言编写,适用于存储和查询按时间顺序产生的数据,它具有高效的数据存储和查询机制,支持高并发写入和... 目录一、简单介绍InfluxDB是什么?1、主要特点2、应用场景二、使用步骤1、集成原生的Influ

SpringBoot实现websocket服务端及客户端的详细过程

《SpringBoot实现websocket服务端及客户端的详细过程》文章介绍了WebSocket通信过程、服务端和客户端的实现,以及可能遇到的问题及解决方案,感兴趣的朋友一起看看吧... 目录一、WebSocket通信过程二、服务端实现1.pom文件添加依赖2.启用Springboot对WebSocket