Php Laravel无法检测应用程序环境

Php Laravel无法检测应用程序环境,php,laravel,configuration,frameworks,Php,Laravel,Configuration,Frameworks,我在Laravel的config目录中有三个环境文件夹:development、testing和local。在start.php文件中更改环境和主机名时,只会识别生产环境。你有没有想过我可能做错了什么 app/routes.php //using this as a test to confirm that the correct environment is being used Route::get('/', function() { var_dump(App::environmen

我在Laravel的config目录中有三个环境文件夹:development、testing和local。在start.php文件中更改环境和主机名时,只会识别生产环境。你有没有想过我可能做错了什么

app/routes.php

//using this as a test to confirm that the correct environment is being used

Route::get('/', function()
{
   var_dump(App::environment());
});
bootstrap/start.php:

$env = $app->detectEnvironment(array(

'development' => array('localhost'),

));

在这里,结果应该是“字符串(11)”开发。相反,它是“字符串(10)”生产。

localhost
可能不是您机器的真实主机名。

您可以通过回显
gethostname()
找到主机名。然后用它代替
localhost

谢谢,你是对的。显然,我的机器的真正主机名是“my Computer.local”。问题解决了。再加上这个答案,如果在Mac上使用终端,或者在Windows上使用命令提示符,您只需写“hostname”,它就会给您主机名:)@Karl Good tip。我将坚持回答中的
gethostname()
,因为它是跨平台的,并且它肯定返回Laravel想要的内容(因为它在内部使用相同的函数)