Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 尝试以开发模式迁移_Php_Laravel_Environment Variables - Fatal编程技术网

Php 尝试以开发模式迁移

Php 尝试以开发模式迁移,php,laravel,environment-variables,Php,Laravel,Environment Variables,我试图弄清楚如何在我的Laravel应用程序中将我的环境设置为开发模式 bootstrap/start.php $env = $app->detectEnvironment(array( 'development' => array('blog.app'), 'production' => array('') )); 在我的routes文件中,我有以下内容: Route::get('/', function() { dd(App::environm

我试图弄清楚如何在我的Laravel应用程序中将我的环境设置为开发模式

bootstrap/start.php

$env = $app->detectEnvironment(array(

    'development' => array('blog.app'),
    'production' => array('')

));
在我的routes文件中,我有以下内容:

Route::get('/', function()
{
    dd(App::environment());
});
当我去blog.app的时候,它说它将投入生产,我不知道为什么。弄清楚为什么它给了我生产而不是开发,是因为我试图运行命令“php artisan migrate”,它给了我以下信息

My-iMac:blog my$ php artisan migrate
**************************************
*     Application In Production!     *
**************************************

Do you really wish to run this command?

所以我需要帮助理解为什么在我尝试进入开发模式时,它仍然说应用程序处于生产模式。

您需要找出您的机器名称。为此,请在任意位置运行此代码:

echo gethostname();
exit;
有关该功能的更多信息:


它将输出您的机器名,然后您需要将其粘贴到“development”数组中。

进入项目目录。然后导航到bootstrap/start.php

使用您的计算机名编辑
$app->detectEnvironment
中指定的本地数组

Laravel每次都会自动检查您的机器名,并知道这是一个本地环境,然后改用本地配置文件。要使用本地配置文件,您可以导航到app/config/local并在那里编辑文件。app/config中的文件属于生产环境。您可以将这些文件复制到本地文件夹中,然后进行相应的编辑,例如,您的本地计算机和服务器上的数据库配置可能会有所不同

您只需编辑配置文件夹中的文件,Laravel将根据start.php中的数组自动检测环境,并使用与您正在工作的机器相关的配置文件。您还可以指定更多环境并在start.php文件中创建它们的条目,然后在app/config文件夹中创建同名文件夹,并在该文件夹中为该环境创建配置文件

示例:如果您想要有两个本地环境,可以编辑start.php文件,如下所示

$env = $app->detectEnvironment(array(

    'local' => array('Machine1', 'Machine2'),.
    'local2' => array('Machine3', 'Machine4'),

));
然后导航到app/config文件夹,创建两个文件夹,如local和local2,并为每个文件夹创建单独的文件。现在,名称为Machine1和Machine2的计算机将自动使用本地文件夹中的配置文件,Machine3和Machine4将使用local2文件夹中的配置文件。这样,Laravel在设置环境时提供了极大的灵活性

有关更多信息,请查看Laracasts的插曲