2016-12-15 11 views
0

Windows 10のXAMPPでPHP5.6をPHP7にアップグレードしましたfollowing this guide。 PDOを除いてうまく動作します。PHP7とpdo_mysql

私のphpinfo()にはPDO support enabled, PDO drivers no valueがあります。 php.ini-developmentをコピーしてphp.iniに名前を変更しました。拡張フォルダの宣言と拡張ドライバphp_pdo_mysql.dllのコメントを外しました。

extension_dir = "ext" 
... 
extension=php_pdo_mysql.dll 

php_pdo_mysql.dllはCに位置していることを私は確認しました:\ XAMPPの\ PHPの\ extと、私はコンソールでphp -mを実行すると、PDOとPDO_MYSQLの両方がアクティブのモジュールとして記載されています。

C:\xampp\php>php -m 
[PHP Modules] 
bcmath 
calendar 
Core 
ctype 
curl 
date 
dom 
exif 
filter 
gd 
gettext 
hash 
iconv 
json 
libxml 
mbstring 
mcrypt 
mysqlnd 
openssl 
pcre 
PDO 
pdo_mysql 
Phar 
Reflection 
session 
SimpleXML 
SPL 
standard 
tokenizer 
wddx 
xml 
xmlreader 
xmlwriter 
zip 
zlib 

[Zend Modules] 

私はPDOを利用してスクリプトを実行すると、私は私が実行しているスクリプトが完全に有効であり、アップグレード(基本的にはちょうどnew PDO(params))の前にうまく働いた Fatal error: Uncaught PDOException: could not find driver in (path to script)

を投げます。

私には何が欠けていますか?

答えて

1

理由は何ですか、理由はわかりませんが、Windowsには拡張子dirへの絶対パスが必要です。だからではなく、php.iniで

extension_dir = "ext" 

の、私は

extension_dir = "C:/xampp/php/ext" 

を配置し、Apacheを再起動します。すべてが再び動作します。

誰かがこの問題について詳しく説明できますか?