2015-09-27 5 views
0

У меня возникла проблема с работой с файловой информацией. Он включен в PHP.ini, но когда я запускаю php -m, он не указан. У меня PHP 5.5, поэтому он должен быть стандартным и не нужен. Я новичок и смущен, поэтому, пожалуйста, будьте добры.Информация о файле PHP Error - Class 'finfo' не найден, но модуль находится в php.ini

php -m 

[PHP Modules] 
bcmath 
calendar 
Core 
ctype 
curl 
date 
dom 
ereg 
exif 
filter 
ftp 
gd 
gettext 
hash 
iconv 
imagick 
imap 
ionCube Loader 
json 
libxml 
mbstring 
mcrypt 
mysql 
openssl 
pcre 
Phar 
posix 
Reflection 
session 
SimpleXML 
sockets 
SPL 
sqlite3 
standard 
tokenizer 
XCache 
XCache Cacher 
xml 
xmlreader 
xmlwriter 
zip 
zlib 

[Zend Modules] 
XCache 
XCache Cacher 
the ionCube PHP Loader 

В моей php.ini

extension = "fileinfo.so" 
+0

Проверьте, действительно ли используется 'php.ini'. Возможно, это не тот, который вы думаете. – CBroe

+0

Я думаю, вы должны найти правильный php.ini попробовать запустить php -ini – fefe

+0

По умолчанию это расширение встроено в PHP с 5.3, нет файла 'so', который вам нужно загрузить. Вы сами строили PHP или устанавливали его из диспетчера пакетов? Выводит ли команда 'configure' в вашей информации PHP' --disable-fileinfo', которая отключила бы ее от включения в PHP, и в этом случае вам нужно будет скомпилировать и установить модуль PECL. – drew010

ответ

2

По умолчанию это расширение получает встроенный в PHP начиная с 5.3, что означает, что нет so для загрузки.

Поскольку он не отображается как доступный модуль, это может означать, что PHP был скомпилирован с помощью переключателя --disable-fileinfo (см. Вывод команды Configure Command в phpinfo), который отключил бы его от включения в PHP.

Если он был скомпилирован с отключенной опцией finfo, вам потребуется либо перекомпилировать PHP без этой опции, либо скомпилировать и установить модуль PECL, а затем динамически загрузить расширение в php.ini.

 Смежные вопросы

  • Нет связанных вопросов^_^