• 締切済み

phpでpostgresを使いたい(windows

phpでpostgresを使いたい(windows) Windows版のアパッチとphpをダウンロードして解凍し、phpinfo()が出るところまで来ました。 Apache24 php-7.2.0-Win32-VC15-x64 次にpostgresqlを使いたくてインストールしました。 使えるようにするにはphp.iniを変更しないといけないようですが、ネットで検索して出てくることと実情が合いません。 まず、php.iniが見つからなかったのですが、これはphp.ini-productionをコピーしてphp.iniに名前を変更すればよさそうです。 次に 「extension=php_pgsql.dll」の先頭にセミコロン(;)が付いている場合は上記の図のようにセミコロンを削除して下さい。 とあるのですが、 php.iniの中にphp_pgsql.dllの記述はありません。 どうすればよいでしょうか?

みんなの回答

  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

まずはphp_pgsql.dllが存在しているかどうかを確認してください(extension_dirはextとかだと思いますので探してみてください)。存在するならば、php.iniに自分で extension=pdo_pgsql.dll を追加すればいいと思います(extension=pdo_pgsql.dllとするかextension=pdo_pgsqlでいいかは他のextensionを参考に)。 なおPostgreSQLをPDOで扱うなら、extension=php_pdo_pgsql.dllが必要です。 http://php.net/manual/ja/pdo.installation.php

webuser
質問者

お礼

> まずはphp_pgsql.dllが存在しているかどうかを確認してください 存在しません。 > 存在するならば、php.iniに自分で > extension=pdo_pgsql.dll pdo_pgsql.dllは存在します。 pdo_pgsql.dllはiniの中にもコメントアウトされた記述があります。 しかし、 extension=pdo_pgsql.dll のコメントを外してもpg_connectコマンドでエラーになります。 php_pgsqlの後継がpdo_pgsqlなのか?と思いましたが、 ネット上で「php_pgsql」と「pdo_pgsql」の違いに関して検索してみましたが分かるところに辿り着けませんでした。 仕方なく、PHP 5.6をダウンロードしました。 すると、php_pgsql.dllが存在しました。 iniの中もphp_pgsql.dllがコメントアウトされていました。 早速、 extension=php_pgsql.dll のコメントを外してみましたが、状況変わらずです。

関連するQ&A