laravel配置自定义全局函数,前后端都能用的函数

一、在app/目录下创建一个文件夹名字为Helpers(可以随便取),然后再Helpers下面创建functions.php文件,里面代码如下:

<?php
/**
 * 自定义全局函数,控制器和模板都能用
 */
if (!function_exists('lang_url')) {
    /**
     * 语言包路径
     *
     * @param $path
     * @param null $lang 指定语言包
     * @param null $secure
     * @return string
     */
    function lang_url($path, $lang = null, $secure = null)
    {
        return app('url')->asset('/' . (empty($lang) ? app()->getLocale() : trim($lang)) . '/' . ltrim($path, '/'), $secure);
    }
}

二、在composer.json文件里的autoload里面添加如下所示files……:

"autoload": {
    "classmap": [
        "database/seeds",
        "database/factories"
    ],
    "psr-4": {
        "App\\": "app/"
    },
    "files": [
        "app/Helpers/functions.php"
    ]
},
三、最后前后端使用全局函数lang_url会报错,应该在项目文件夹下执行命令,composer dump-autoload,

因为 database 文件夹使用 classmap 来做加载的。所以只有在打了 composer dumpautoload 之后 composer 才会更新 autoload_classmap 的内容

最后大功告成!前后端都能使用全局函数lang_url;

在https://blog.csdn.net/logic_lai/article/details/80348529  laravel实现语言包切换的时候这个全局函数就能用啦。

阅读更多
个人分类: laravel
上一篇laravel配置语言包,实现网站中英文切换
下一篇windows下安装deepin实现双系统,并配置好php环境
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭