IT Share you

PHP fileinfo는 정의되지 않은 함수입니다.

shareyou 2020. 11. 16. 23:13
반응형

PHP fileinfo는 정의되지 않은 함수입니다.


PHP에서 MIME 콘텐츠 유형을 얻으려고 할 때마다 다음과 같이 에코됩니다.

치명적인 오류 : 4 행의 /home/jobynadel/finadel.com/video/finfo.php 에서 클래스 'finfo'를 찾을 수 없습니다.

또는

치명적인 오류 : 4 행의 /home/jobynadel/finadel.com/video/finfo.php 에서 정의되지 않은 함수 finfo_open을 호출합니다 .

나는 그것을 이해할 수 없다!

내가 사용하는 코드는 다음과 같습니다.

$file_info = new finfo(FILEINFO_MIME_TYPE);
// See constant value http://php.net/manual/en/fileinfo.constants.php#113687 
$mime_type = $file_info->buffer(file_get_contents($file));

당신의 php.ini 파일에서보세요하고 있는지 확인 fileinfo.so또는 php_fileinfo.dll활성화 (플랫폼 및 버전에 따라).

다음과 유사한 줄이 있어야합니다.

extension=fileinfo.so

php.ini 파일에서


XAMPP를 사용 extension=php_fileinfo.dll하는 경우 php.ini에서 활성화합니다 .


사용중인 PHP 버전은 무엇입니까? PHP 5.3.0 이상에는 Fileinfo가 내장되어 있지만 Windows에서는 php.ini. 문서에서 추가 정보 찾을 수 있습니다 .


WAMP를 사용하는 경우 PHP 확장으로 이동하여 PHP_fileinfo를 enbale 하고 모든 서버를 다시 시작하십시오.


Windows 사용자 : php.ini를 편집 하고 다음 줄의 주석 처리를 제거하십시오.

extension=php_fileinfo.dll

즉, 이전 세미콜론을

;extension=php_fileinfo.dll

php.ini 를 적용하려면 Apache를 다시 시작 해야합니다.


사람들은 잘 작동했지만 다음 오류가 나타납니다.

일부 호스팅 제공 업체 (예 : Dreamhost)는 고객이 구성 파일에서 기본 PHP 설정을 재정의 할 수 있도록 허용하며, 대개 다음과 같은 경로를 사용합니다.

~/.php/5.4/phprc

경로에있는 버전 번호는 PHP를 업그레이드하는 경우 (또는 사용자를 대신하여 업그레이드되는 경우) 문제가 될 수 있습니다. 파일 정보 확장을 활성화하는 설정을 포함하여 이전 버전의 모든 사용자 정의 설정은 최신 버전에서 누락됩니다. 일반적으로 구성 파일을 적절한 새 구성 디렉토리에 복사하고 서버를 다시 시작할 수 있습니다.


PHP에서 이와 동일한 문제가 발생했습니다. 다음 단계를 수행했습니다.

 - make sure that the fileinfo extension is already installed if you are using < PHP 5.3.0.

 - Then you have to add in php.ini ;extension=fileinfo.so or
   ;extension=php_fileinfo.dll

 -  If you want to uncomment remove the semicolon(;)
   extension=fileinfo.so or extension=php_fileinfo.dll

그런 다음 웹 서버를 저장하고 다시 시작하십시오.

참고 URL : https://stackoverflow.com/questions/3579072/php-fileinfo-is-undefined-function

반응형