【问题标题】:Run Laravel command dependent on environment variables根据环境变量运行 Laravel 命令
【发布时间】:2021-07-01 05:48:26
【问题描述】:

一般来说,当我想在本地查看路线时,我会使用

php artisan route:list

当我不处理使用在本地环境和服务器之间声明不同的环境变量的文件时,效果很好。现在我明白了

PHP 注意:未定义索引:第 12 行 ....php 中的 VARIABLE_NAME

注意:未定义索引:第 12 行 ....php 中的 VARIABLE_NAME

特别是在我使用的服务器中

if (!defined('VARIABLE_NAME')) { define('VARIABLE_NAME', $_SERVER['VARIABLE_NAME']); }

$variable = env('VARIABLE_NAME') ? env('VARIABLE_NAME') : VARIABLE_NAME;

基本上服务器和本地环境之间的区别将是以下部分(在本地我不使用它并且是冲突的地方,因为没有$_SERVER['VARIABLE_NAME'])

if (!defined('VARIABLE_NAME')) { define('VARIABLE_NAME', $_SERVER['VARIABLE_NAME']); }

也测试了其他变体,例如

if (!defined('VARIABLE_NAME') or !getenv('VARIABLE_NAME')) { define('VARIABLE_NAME', $_SERVER['VARIABLE_NAME']); }

我可以在本地更改代码并忽略该文件。然而,这是一个可以经常更改的文件,所以这并不理想。

根据目标(见路线列表),最方便的方法是什么?方便我的意思是不必在 shell 中声明变量 one 或不必为本地和服务器维护不同的文件。

【问题讨论】:

    标签: php laravel bash environment-variables amazon-elastic-beanstalk


    【解决方案1】:

    基于this answer,运行前

    php artisan route:list
    

    我会跑

    set -o allexport
    source .env
    set +o allexport
    

    然后能够很好地看到路线

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-20
      • 1970-01-01
      • 1970-01-01
      • 2018-03-24
      • 2016-04-16
      • 2020-06-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多