找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1951|回复: 0
打印 上一主题 下一主题

laravel创建类似ThinPHP中functions.php的全局函数

[复制链接]

3444

主题

3465

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
11142
跳转到指定楼层
楼主
发表于 2018-2-14 05:30:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            前言
一直觉得ThinPHP中的公共函数是一个很好的设计,因为我们只需要在functions.php中对共用的函数进行封装,然后就可以在全局直接进行调用了。其实Laravel中也有类似的功能的,比如说助手函数,类似于session()等函数,这些助手函数也是全局可以调用的,非常的方便。
下面总结一下,两者之间的差别以及相同点。
TP3系列中functions.php文件默认其实是空文件,很好找。我们可以直接封装代码。
Laravel5系列中的path/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php 。该文件中封装的函数就是全局函数,可以在任意区域进行调用。
但是,Laravel中的helper.php中已经封装好了很多的内置助手函数,一般不建议直接在该文件中进行自己函数的封装,而是采用新创建一个文件,里面放置需要封装的函数。
这里有一点需要说明:全局函数的实现是依靠在初始化的时候,将helps.php或者functions.php直接进行了加载。而Laravel中path/bootstrap/autoload.php中可以定义在初始化的时候加载什么文件。
在默认的情况下,有以下一条加载配置:
require __DIR__.'/../vendor/autoload.php';
同样,我们也可以加载其他的文件,比如以下的加载操作:
require __DIR__.'/../app/Common/functions.php';
这样,我们就可以直接在这个加载的文件中直接封装需要的函数,这样也就实现了我们的需要。
另外,有人还推荐了另外一种方法,就是使用一个控制器,在控制器中的类中封装静态的方法,在需要的地方,引入所需的控制器,也可以实现我们的需求。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用laravel能有一定的帮助,如果有疑问大家可以留言交流。
            
            
您可能感兴趣的文章:
  • Laravel中如何增加自定义全局函数详解
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端