You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel中如何全局获取环境变量?APP_URL取值返回null问题

问题解决方法

核心原因

Laravel 中env()函数仅在配置加载阶段有效,当执行过config:cache命令(生产环境常用)后,业务代码(比如模型、控制器)里直接调用env()会返回null。而配置文件中已经将APP_URL映射到了app.url配置项,正确的做法是通过config()函数读取。

修复步骤

  1. 替换模型中的代码
    将直接调用env()的代码改成读取配置项:
class Attachment extends Model
{
    public function getUrlAttribute()
    {
        return config('app.url');
    }
}
  1. 处理配置缓存(若已生成)
  • 开发环境:执行命令清除配置缓存
php artisan config:clear
  • 生产环境:重新生成配置缓存
php artisan config:cache

补充说明

所有环境变量都应该先配置到config/目录下的对应配置文件中,再通过config()函数读取,这是Laravel的最佳实践,避免因配置缓存导致的变量读取失败问题。

内容的提问来源于stack exchange,提问作者Ricky Anwar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 08:02:07