PHP文件的引入
2021/6/19 1:27:19
本文主要是介绍PHP文件的引入,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
PHP文件的引入
要在一个 PHP 脚本中引入另一个 PHP 脚本中定义的代码(通常是函数或者类),
需要借助 include、require、include_once、require_once 等语句,
include 和 require 都可以通过指定路径引入一个 PHP 脚本,
区别是 include 没有找到对应路径脚本时发出警告(E_WARNING),
而 require 会抛出致命错误(E_COMPILE_ERROR)
include_once/require_once 也是用于引入指定路径 PHP 脚本,
与 include/require 的区别是如果指定路径已经包含过,
不会再次包含,只会包含一次同一路径脚本
include_once 和 require_once 的区别与 include/require 一样
使用 include_once/require_once 性能更好一些,
至于使用 include_once 还是 require_once,
取决于你对指定路径 PHP 脚本不存在的预期处理
自动加载类文件
觉得反复编写 require_once/include_once 语句太麻烦,
可借助 spl_auto_register 函数注册自动加载器,实现系统未定义类或接口的自动加载
bool spl_autoload_register ([ callable autoload_function [,bool throw = true [, bool $prepend = false ]]] ) //autoload_function 欲注册的自动装载函数。 //如果没有提供任何参数,则自动注册 autoload 的默认实现函数spl_autoload()。 //throw // autoload_function 无法成功注册时,spl_autoload_register()是否抛出异常。 //prepend //true,spl_autoload_register() 会添加函数到队列之首,而不是队列尾部。
//https://laravelacademy.org/post/21682 <?php namespace App; use App\Testing\Test as SubTest; spl_autoload_register(function ($className) { $path = explode('\\', $className); if ($path[0] == 'App') { $base = __DIR__; } $filename = $path[count($path) - 1] . '.php'; $filepath = $base; foreach ($path as $key => $val) { if ($key == 0 || $key == count($path) - 1) { continue; } $filepath .= DIRECTORY_SEPARATOR . strtolower($val); } $filepath .= DIRECTORY_SEPARATOR . $filename; require_once $filepath; }); Test::print(); SubTest::print();
通过Composer管理命名空间
借助 PHP 的包管理工具 Composer 帮我们管理这种命名空间与目录路径的映射
这篇关于PHP文件的引入的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享
- 2024-11-01开源 PHP 商城项目 CRMEB 安装和使用教程
- 2024-11-01用php和mysql写无限分类,有哪几种方法-icode9专业技术文章分享
- 2024-10-31php数据分表导出时部分数据无法导出什么原因-icode9专业技术文章分享
- 2024-10-30有经验的 PHP 开发者学习一门新的编程语言,有哪些推荐的有前景的语言-icode9专业技术文章分享
- 2024-10-21php 检测图片是否篡改过-icode9专业技术文章分享