2016-04-12 4 views
1

laravelを初めて使用しています。私はmysqlからpostgresqlに移行し、職人がすべてのテーブルを移行して、それらをtinker経由でシードしました。しかし、mysqlとSQLのクエリを処理していた定型文を使用しようとする私の試みはすべて復活しています。私はこの問題の解決策を探して時間を費やしているLaravelのPostgreSQL接続でのみPDO例外が発生しますが、職人のコマンド作業

PDOException in Connector.php line 55: 
could not find driver in Connector.php line 55 
at PDO->__construct('pgsql:host=localhost;dbname=dbname;port=5432','postgres', 'password', array('0', '2', '0', false)) in Connector.php line 55 

、私は=の両方の生産と開発のphp.iniファイルでphp_pdo_pgsql.dllをアンコメント拡張子= php_pgsql.dll &拡張子を持って、私はLoadFileが「Cを追加しました:/ mamp/bin/php/php5.6.13/libpq.dll "をApacheフォルダ内のhhtp.conにコピーすると、私はコンポーザダンプの自動ロードを行います。 laravelからのクエリはpostgresエラーログに表示されません。これは移行コマンドで実行されます。そして私は、私がチェック方法を覚えることができないが、PDOモジュールが

私database.phpで

'default' => env('DB_CONNECTION', 'pgsql'), 
'pgsql' => [ 
     'driver' => 'pgsql', 
     'host' => env('DB_HOST', 'localhost'), 
     'port' => env('DB_PORT', '5432'), 
     'database' => env('DB_DATABASE', 'forge'), 
     'username' => env('DB_USERNAME', 'forge'), 
     'password' => env('DB_PASSWORD', ''), 
     'charset' => 'utf8', 
     'prefix' => '', 
     'schema' => 'public', 
    ], 

私のenvをインストールした登場

APP_URL=http://localhost 
DB_HOST=localhost 
DB_DATABASE=database 
DB_USERNAME=postgres 
DB_PASSWORD=password 
APP_ENV=local 
APP_DEBUG=true 

CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

REDIS_HOST=127.0.0.1 
REDIS_PASSWORD=null 
REDIS_PORT=6379 

MAIL_DRIVER=smtp 
    MAIL_HOST=mailtrap.io 
MAIL_PORT=2525 
MAIL_USERNAME=null 
MAIL_PASSWORD=null 
MAIL_ENCRYPTION=null 

神様、私に答えを与えてください

C:\MAMP\htdocs\storybox1.0\public>php -r "print_r(get_loaded_extensions());" 
Array 
(
[0] => Core 
[1] => bcmath 
[2] => calendar 
[3] => com_dotnet 
[4] => ctype 
[5] => date 
[6] => ereg 
[7] => filter 
[8] => hash 
[9] => iconv 
[10] => json 
[11] => mcrypt 
[12] => SPL 
[13] => odbc 
[14] => pcre 
[15] => Reflection 
[16] => session 
[17] => sockets 
[18] => standard 
[19] => mysqlnd 
[20] => tidy 
[21] => tokenizer 
[22] => zip 
[23] => zlib 
[24] => libxml 
[25] => dom 
[26] => PDO 
[27] => pdo_mysql 
[28] => openssl 
[29] => SimpleXML 
[30] => soap 
[31] => wddx 
[32] => xml 
[33] => xmlreader 
[34] => xmlwriter 
[35] => curl 
[36] => mbstring 
[37] => Phar 
[38] => pdo_pgsql 
[39] => pgsql 

12

+0

'<?php phpinfo();のみを含むPHPファイルを作り、' php_pdo_pgsql'モジュール実際にロードされています。 – Chris

+0

覚えておいてください:コマンドラインPHPインタプリタは、必ずしもApacheモジュールや他のSAPIと同じphp.iniファイルをロードするとは限りません。 –

+0

これはロードされているようですが、私はMampを使用しています。どこのApache php.iniですか? –

答えて

0

コンピュータが長すぎる必要があります。phpinfo()からの私のPHP.iniパスが、私が見ていたものと異なっていました。おかげでAlvaroとChrisはあなたが正しいと判断しました。php.iniファイルはmamp/bin/phpにありませんでした

関連する問題