PHP cli和PDOException

时间:2015-04-23 10:17:33

标签: php laravel pdo laravel-5

我试图在我的localhost上运行一个非常基本的Laravel应用程序。

我有一个简单的postgre数据库,它包含3个数据行。我可以查询razorSQL中的项目并获得结果,因此数据库很好。

在phpStorm中,我使用php -S localhost:8888 -t public

启动Web服务器

Web服务器启动正常。如果我启动应用程序,我会得到Laravel主屏幕。

好的,然后我将主路线更改为此。我得到了#34; Hello World"显示。

Route::get('/', function(){
    $data = "Hello World";
    return $data;
});

但是当我这样做时

Route::get('/', function(){
    $data = \DB::table('posts')->get();
    return $data;
});

我明白了......

enter image description here

phpStorm支持PDO还是我需要的插件?

更新

Route::get('/', function(){
//            $data = \DB::table('posts')->get();
    $data = phpinfo();
    return $data;
});

php.ini位置
enter image description here

的php.ini
enter image description here

所以在php.ini中启用了PDO。这是我没有得到的。是的,我是PHP的新手。

这是来自phpInfo()的PSO剪辑 - PS,是的,我在更改后重新启动了wamp。我只是不明白为什么pdo_pgsql没有出现/工作

enter image description here

它在下拉列表php extensions中也很活跃 enter image description here

1 个答案:

答案 0 :(得分:2)

最终使用它,但无论如何都会使用HOMESTEAD,但这是解决方案。

WAMPphp CLI两者都使用相同的php.ini file 但我遇到了这个解决方案并且有效。

您只需将此行添加到httpd.conf

即可
  

PHPIniDir“ PHP目录的完整路径 /”
  Loadfile“ PHP目录的完整路径 /php5ts.dll”
  Loadfile“ PHP目录的完整路径 /libpq.dll”
  LoadModule php5_module“ PHP目录的完整路径 /php5apache2_4.dll”

保存httpd.conf

  

退出WAMP

然后在cmd

  

net stop dnscache
   net start dnscache

然后

  

重启WAMP

所以它最终看起来像这样

#This was activated on 23/04/2015
LoadFile "H:/wamp/bin/php/php5.5.12/php5ts.dll"
LoadFile "H:/wamp/bin/php/php5.5.12/libpq.dll"
PHPIniDir h:/wamp/bin/php/php5.5.12/
LoadModule php5_module "h:/wamp/bin/php/php5.5.12/php5apache2_4.dll"