Laravel 5.4 定义全局函数

方法借鉴自这位“雷锋”,在此表示感谢。

其实原理很简单,就是随便在哪里新建一个文件,随便什么名字,随便什么目录,然后将该文件保存进自动加载路仅中。

创建文件

随便创建在哪里,这里我因为受tp 3.2的毒害比较深,所以新建
app/common/functions.php
然后我只要在其中编写我需要的函数:


function getHelloWorld(){
    echo "hello world";
}
?>

自动加载该文件

上面我们新建好了该文件,这里就要把该文件保存进框架自动加载路径,按照借鉴,只需要在bootstrap/autoload.php中加上这么一句:

require __DIR__.'/../app/Common/functions.php';

注意,这里的路径是根据我新建的文件写的,你需要按照自己的具体文件设置。

调用

调用就很简单了,只需要在你需要调用这个函数的地方直接调用就行了:

Route::get('/',function(){
    getHelloWorld();
});

注意

框架还会加载别的函数,这些函数一些在
/vendor/laravel/framework/src/Illuminate/Support/helpers.php
中,所以你定义函数的时候一定要注意函数名,如果跟上面函数有重名的情况,那么就会得到以下错误信息:

Fatal error: Cannot redeclare getDate() in /var/www/sample/app/Common/functions.php on line 10

你可能感兴趣的:(php,laravel,实战)