2011-09-29 2 views
5

WAMP에서 EasyPHP로 옮겼습니다. 이제 PDO를 사용하는 데 문제가 있습니다. 브라우저에서 사이트를 볼 때 PDO가 제대로 작동하지만 cmd에서 작동하지 않거나 Netbeans을 통해 테스트 파일을 실행할 때 PDO가 제대로 작동합니다. 내가 얻을 :PHP PDO 확장을 사용할 수 없습니다. 명령 줄입니다.

"PDOException : 드라이버를 찾을 수 없습니다"

phpinfo()에서 구성 명령에 대해 내가 php.ini에서

cscript /nologo configure.js " --enable-snapshot-build" " --disable-isapi" " --enable-debug-pack" " --disable-isapi" " --without-mssql" " --without-pdo-mssql" " --without-pi3web" " --with-pdo-oci=D:\php-sdk\oracle\instantclient10\sdk, shared" " --with-oci8=D:\php-sdk\oracle\instantclient10\sdk, shared" " --with-oci8-11g=D:\php-sdk\oracle\instantclient11\sdk, shared" " --enable-object-out-dir=../obj/" " --enable-com-dotnet" " --with-mcrypt=static" " --disable-static-analyze" 

이 이미이 라인을 주석 처리를 제거 :

extension=php_pdo_mysql.dll 

extension=php_mysql.dll 

이 작업을 어떻게 얻을 수 있는지에 대한 아이디어가 있습니까?

+2

잘못된 php.ini를로드하는 것처럼 들립니다. 'phpinfo()'는 그것을 알려줄 것입니다. – Znarkus

답변

2

Linux에 설치해야하는 모든 웹 서버 설치 또는 일반적으로 2 개의 다른 php.ini를 사용하는 windows. 하나는 CLI (명령 행 클라이언트) 용이고 다른 하나는 APACHE 용이거나 wathever 용 서버는 easyphp에 있습니다.

내가 리눅스에 있고 EasyPHP를 사용하지 않아서 그 이상으로 도울 수는 없지만 그 방향으로 보았을 때 시스템 전체 검색이 도움이 될 수 있습니까?

0

문제의 해결책을 찾았습니다. Mathieu Dumoulin이 지적했듯이, PHP는 CLI를 위해 다른 .ini를로드합니다. 그래서 내가 한 것은 php 폴더 아래에 php-cli.ini 파일을 만들고 문제가 해결되었다는 것입니다.

5

명령 줄에서 php를 실행할 때 -c 또는 --php-ini 인수를 사용하여 php.ini 파일을 가리킬 수 있습니다. 이렇게하면 둘 다 하나의 php.ini 파일을 사용할 수 있습니다. 직접 스크립트를 실행하는 경우 php ~ php -c/path/to/php.ini의 별칭을 지정할 수도 있습니다.

관련 문제