php中没有extension是因为在编译时,支持的库被设置为“enable”,其解决办法就是添加参数为“–with-config-file-scan-dir=/etc/php.d”即可。
推荐:《PHP视频教程》
php php.ini中没有extension
今天看了一下centOS中的php配置
vim /etc/php.ini
发现并没有extension=
的配置,即使有也被;注释了
执行php -i发现
Loaded Configuration File => /etc/php.ini Scan this dir for additional .ini files => /etc/php.d Additional .ini files parsed => /etc/php.d/bz2.ini, /etc/php.d/calendar.ini, /etc/php.d/ctype.ini, /etc/php.d/curl.ini, /etc/php.d/dom.ini, /etc/php.d/exif.ini, /etc/php.d/fileinfo.ini, /etc/php.d/ftp.ini, /etc/php.d/gd.ini, /etc/php.d/gettext.ini, /etc/php.d/gmp.ini, /etc/php.d/iconv.ini, /etc/php.d/json.ini, /etc/php.d/mbstring.ini, /etc/php.d/mysqli.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_mysql.ini, /etc/php.d/pdo_sqlite.ini, /etc/php.d/phar.ini, /etc/php.d/shmop.ini, /etc/php.d/simplexml.ini, /etc/php.d/sockets.ini, /etc/php.d/sqlite3.ini, /etc/php.d/tokenizer.ini, /etc/php.d/xml.ini, /etc/php.d/xml_wddx.ini, /etc/php.d/xmlreader.ini, /etc/php.d/xmlwriter.ini, /etc/php.d/xsl.ini, /etc/php.d/zip.ini
原来是从/etc/php.d中加载的,编译php时加入参数–with-config-file-scan-dir=/etc/php.d,因为不是下载的源码编译,直接安装的php7.2,所以应该是默认携带了该参数。
所以php会主动查找php.ini以外的scan-dir中的所有ini配置文件。
编译时即支持的库一般也被设置为enable了,因为能从/etc/php.d中找到,没有这个参数的话,Scan this dir for additional .ini files是空的,也就不会自动加载各种库了,需要自己往php.ini中添加