2016-12-15 2 views
0

Windows XAMPP에서 PHP5.6을 PHP10으로 업그레이드했습니다. 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는 \ 내선 내가 콘솔에서 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를 사용하는 스크립트를 실행

는, 나는 Fatal error: Uncaught PDOException: could not find driver in (path to script)

내가 실행하고 스크립트는 완전히 유효하고 업그레이드 (기본적으로 단지 new PDO(params)) 전에 잘 작동 을 던져.

무엇이 누락 되었습니까?

답변

1

Windows가 확장 디렉터리의 절대 경로가 필요한 이유가 확실하지 않은 이유가 있습니다. 그래서 그 대신 php.ini 파일에서

extension_dir = "ext" 

의, 나는

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

을 넣고 아파치를 다시 시작됩니다. 모든 것이 다시 작동합니다.

누군가이 문제에 대해 자세히 설명해 줄 수 있습니까?