2016-07-29 50 views
1

我知道這個錯誤信息之前已經被描述和我試着像加pdo.so爲php.ini的修復等PHP70 PDO錯誤+未捕獲的錯誤:類「PDO」

主要的區別我有是PDO適用於我運行的服務器上的網站 - 它只是用於更新數據庫的命令行腳本失敗。所以基本上它可以工作,但不是在所有情況下

這是工作之前我升級到PHP7.0.8/9

sudo yum list installed php70* 
Loaded plugins: priorities, replace, update-motd, upgrade-helper 
958 packages excluded due to repository priority protections 
Installed Packages 
php70.x86_64     7.0.8-1.13.amzn1      @amzn-updates 
php70-cli.x86_64    7.0.8-1.13.amzn1      @amzn-updates 
php70-common.x86_64   7.0.8-1.13.amzn1      @amzn-updates 
php70-json.x86_64   7.0.8-1.13.amzn1      @amzn-updates 
php70-php-bcmath.x86_64  7.0.9-1.el6.remi      @remi-safe 
php70-php-cli.x86_64   7.0.9-1.el6.remi      @remi-safe 
php70-php-common.x86_64  7.0.9-1.el6.remi      @remi-safe 
php70-php-fpm.x86_64   7.0.9-1.el6.remi      @remi-safe 
php70-php-gd.x86_64   7.0.9-1.el6.remi      @remi-safe 
php70-php-json.x86_64  7.0.9-1.el6.remi      @remi-safe 
php70-php-mbstring.x86_64 7.0.9-1.el6.remi      @remi-safe 
php70-php-mcrypt.x86_64  7.0.9-1.el6.remi      @remi-safe 
php70-php-mysqlnd.x86_64  7.0.9-1.el6.remi      @remi-safe 
php70-php-opcache.x86_64  7.0.9-1.el6.remi      @remi-safe 
php70-php-pdo.x86_64   7.0.9-1.el6.remi      @remi-safe 
php70-php-pear.noarch  1:1.10.1-4.el6.remi     @remi-safe 
php70-php-pecl-igbinary.x86_64 
          1.2.2-0.2.20160715gita87a993.el6.remi @remi-safe 
php70-php-pecl-redis.x86_64 3.0.0-1.el6.remi      @remi-safe 
php70-php-process.x86_64  7.0.9-1.el6.remi      @remi-safe 
php70-php-xml.x86_64   7.0.9-1.el6.remi      @remi-safe 
php70-process.x86_64   7.0.8-1.13.amzn1      @amzn-updates 
php70-runtime.x86_64   1.0-5.el6.remi      @remi-safe 
php70-xml.x86_64    7.0.8-1.13.amzn1      @amzn-updates 

有沒有辦法手動包括PDO類?

爲什麼這隻會在命令行上失敗? 注意:我使用與Web和命令行相同的database.class.php(我寫的) - 相同的類但結果不同。

想法?

+0

您使用的是Red Hat或Centos嗎? tbh它可能是其他的口味,但我會猜測你在bash中的路徑指向錯誤的php可執行文件。老實說很難說,雖然 – bassxzero

+0

是的Centos - 好的,我會看看路徑...謝謝你 – Adam

+0

也許它的PHP .8和.9的混合 - 安裝從2個不同的位置 - remi和amzn – Adam

回答

1

你有2個不同的PHP堆棧安裝。

  • php70- *(7.0.8自AMZN),這些可能是 「基地」 的軟件包,並可能提供的/ usr/bin中/ PHP的,但沒有PDO擴展(PHP-PDO封裝)

  • php70-PHP的*(7.0.9從雷米),這是一個軟件集合,設計並行安裝,將提供與php70命令(也可以用 「SCL使php70 PHP」 命令)

有關SCL的更多信息,請登錄Remi's FAQ

+0

你完全正確,現在非常明顯。我已經刪除了AWS php包並通過remi重新安裝了php。現在所有版本都在同一版本,並且一切正常。非常感謝你的時間......謝謝! – Adam