He estado intentando instalar php (7.2) en Ubuntu (16.04) con PDO habilitado. No necesito php como módulo apache, porque quiero usar el servidor integrado de PHP (en modo cli, como php -S localhost:80).
Entonces, esto es lo que hago:
sudo apt-get install php
sudo apt-get install php-mysql
sudo cp /usr/lib/php/7.2/php.ini-production.cli /etc/php/7.2/cli/php.ini
Ahora, en php.ini sin comentar:
extension=pdo_mysql
Y aún cuando ejecuto php -vme sale el error:
PHP Warning: PHP Startup: Unable to load dynamic library 'pdo_mysql' (tried: /usr/lib/php/20170718/pdo_mysql (/usr/lib/php/20170718/pdo_mysql: cannot open shared object file: No such file or directory), /usr/lib/php/20170718/pdo_mysql.so (/usr/lib/php/20170718/pdo_mysql.so: undefined symbol: pdo_parse_params)) in Unknown on line 0
php -m salida:
[PHP Modules]
Core
date
filter
hash
libxml
openssl
pcntl
pcre
Reflection
session
sodium
SPL
standard
zlib
[Zend Modules]

sudo phpenmod pdo_mysqlme da/usr/sbin/phpenmod: 31: .: Can't open /usr/lib/php/php-helperRespuestas:
Resolví el problema de esta manera:
sudo apt-get --purge remove php-commonsudo apt-get install php-common php-mysql php-cliAhora no hay error y
php -mmuestra que tiene todo:Todavía no sé qué causó el problema en primer lugar
fuente
xamppproblema en ubuntu 16.04. GraciasCreé el mismo problema para mí en mi caja de trabajo descomentando manualmente varios
líneas en el
php.ini. Lo que realmente era yo, adivinando elapt-get installproceso. Creo que php7 + moderno maneja estas extensiones usandoconf.darchivos específicos como:/etc/php/7.3/cli/conf.d/10-pdo.ini/etc/php/7.3/cli/conf.d/20-pdo_mysql.iniLa respuesta entonces para mí fue volver a comentar estas
;extensionlíneas en elphp.iniarchivo del cli .fuente