| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> PHP知识库 -> laravel创建全局公共函数,Helper类 -> 正文阅读 |
|
[PHP知识库]laravel创建全局公共函数,Helper类 |
laravel创建全局公共函数,Helper类laravel创建公共函数,Helper类提出问题:在任何一个PHP框架中,都不可能将你所有的需求封装好,也一定有些需求是你特有的,如果这些需要只用一次,那么哪里用哪里写即可。但是如果有经常使用的函数,而laravel并没有为我们封装,因此就需要自己封装,那么在laravel框架中,自己想要封装全局性的公共函数,该如何操作呢?另外封装后能否拿来即用,不要做太多的导入工作呢?下面就和我一起来探索吧。 分析问题:对上述提出的问题进行分析,不难发现有这么几个需要关注的点。
经过上述的分析,我们的目的已经非常明确了,那么下来该如何去实现这些目的呢,一起来吧! 知识储备providers (提供者)laravel中有一个非常重要的概念,就是容器,那么往这些容器里面加什么呢,就可以加入提供者,也就是这里的 providers 。打开laravel项目的 app/Providers 目录,可以看到这里面已经有非常多的Providers ,有个是 AppService ,有的是AuthService等,各自有各自的功能,那么我们可以自己在该文件夹中定义自己的providers ,当然是可以的。 参考资料: Helpers (助手)laravel中自带了很多的助手方法,我们想要做的就是对这些方法进行扩充,根据我们自己的需求今天添加。 参考资料: 解决步骤自定义一个providers在项目的根目录打开命令行输入下面的命令创建一个providers,名称叫HelperServiceProvider
注册提供器所有服务提供器都在 config/app.php 配置文件中注册。该文件中有一个 providers 数组,用于存放服务提供器的类名 。默认情况下,这个数组列出了一系列 Laravel 核心服务提供器。这些服务提供器引导 Laravel 核心组件,例如邮件、队列、缓存等。 要注册提供器,只需要将其添加到数组:
编辑自定义的HelperServiceProvider打开刚才创建的文件app/Providers/HelperServiceProvider.php,并键入下面的内容,看起来是这样的。其中的register就是提供器的工作内容,可以看到他将获取 app/Helpers 文件夹下所有的php文件,并尝试require(引用)它。从这里我们也可以看出,将来我们定义的所有全局公共函数将放在该文件夹下。
创建文件夹并自定义Helpers方法经过上面的代码,我们知道了公共方法定义的位置,下来我们就来创建吧。首先:创建文件夹 app/Helpers 创建公共函数文件在该文件下创建你想要定义的函数文件名,比如 文件结构: 文件内容: 使用和注意至此,我们创建的公共函数已经完成了,接下来你可以在项目的任何地方使用自定义的函数了,比如笔者建立的strEncrypt() 字符串加密函数 注意在创建函数的时候最好对函数是否已经存在进行判断,因此这里的函数是全局使用,因此有可能带来重名的风险。 |
|
PHP知识库 最新文章 |
Laravel 下实现 Google 2fa 验证 |
UUCTF WP |
DASCTF10月 web |
XAMPP任意命令执行提升权限漏洞(CVE-2020- |
[GYCTF2020]Easyphp |
iwebsec靶场 代码执行关卡通关笔记 |
多个线程同步执行,多个线程依次执行,多个 |
php 没事记录下常用方法 (TP5.1) |
php之jwt |
2021-09-18 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 2:36:18- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |