2014-10-07 4 views
1

__autoload 재 선언 할 수 없습니다 https://github.com/phansys/GetId3오류 : 나는 심포니를 사용하여 현재 getId3를 사용하는 것을 시도하고있다()

나는 작곡가 통해 설치 제공된 링크에서 언급 한 바와 같이. 설치가 성공적이었습니다. 내가 그것을 사용하고자하는 파일에서

, 나는 다음과 같은 한 :

<?php 
    use GetId3_GetId3 as GetId3; 

    ... 

    $this->getId3 = new GetId3; 


    $fileInfo = $this->getId3->analyze($media->getBinaryContent()->getRealPath()); 

내가 오류를 다음입니다 :

FatalErrorException: Error: Cannot redeclare __autoload() (previously declared in /Users/etienne/Developpement/Ima-Tech/Clients/osc/vendor/phansys/getid3/GetId3/GetId3.php:69) in /Users/etienne/Developpement/Ima-Tech/Clients/osc/vendor/phansys/getid3/GetId3/GetId3.php line 69 

그리고 오류 스택 :

in /Users/etienne/Developpement/Ima-Tech/Clients/osc/vendor/phansys/getid3/GetId3/GetId3.php line 69 
at ErrorHandler->handleFatalError() in /Users/etienne/Developpement/Ima-Tech/Clients/osc/vendor/symfony/symfony/src/Symfony/Component/Debug/ErrorHandler.php line 219 
at ErrorHandler->handleFatal() in /Users/etienne/Developpement/Ima-Tech/Clients/osc/vendor/symfony/symfony/src/Symfony/Component/Debug/ErrorHandler.php line 0 
at GetId3_GetId3->__construct() in /Users/etienne/Developpement/Ima-Tech/Clients/osc/vendor/phansys/getid3/GetId3/Module/AudioVideo/Quicktime.php line 94 
at GetId3_Module_AudioVideo_Quicktime->Analyze() in /Users/etienne/Developpement/Ima-Tech/Clients/osc/vendor/phansys/getid3/GetId3/GetId3.php line 471 
at GetId3_GetId3->analyze() in /Users/etienne/Developpement/Ima-Tech/Clients/osc/src/Application/Sonata/MediaBundle/Provider/VideoProvider.php line 70 
+0

'require_once' 또는'include_once'를 해보십시오. 이미'require' 나'include'를하고 있다면 도움이되는지보십시오. 당신은 어딘가에 그것들의 복사본을 가지고있을 수도 있습니다. –

+0

필자는 Symfony와 작곡가를 사용 중이므로 필요하거나 포함하지 않을 것입니다. – etiennenoel

+0

Google에 오류가 있습니까? –

답변

2

오래된 라이브러리를 사용하고 있으며 오래된 버전이며 버그가 많은 버전을 사용하고 있습니다.

1.x 버전이 아닌이 패키지의 2.0.0 이상 버전을 사용하십시오. (버전 2.0 또는 2.1에 태그가 지정되지 않았기 때문에 개발 버전을 사용해야 함을 의미합니다). 그러면 자체 내부 자동 로딩을 초기화하지 않기 때문에 작동 할이 라이브러리의 네임 스페이스 버전이 도입됩니다.

GetId3 개체를 두 번 이상 인스턴스화하면 매번 __autoload() 함수를 추가하려고 시도하기 때문에 모든 1.x 버전이 간단히 손상됩니다. 그리고 두 번째 시간은 한 번 너무 깁니다.

+0

dev-master를 사용 중입니다. 좋은가요? – etiennenoel

+1

아니요. 1.x 버전이기 때문에 좋지 않습니다. 나는 2.0.0-beta1 버전의 태그가 있다는 것을 알기 때문에'~ 2.0 @ beta'를 버전 요구 사항으로 사용할 수 있습니다. 이것은'composer update'를 실행할 때마다 자동으로 업데이트됩니다. – Sven

+0

정말 고맙습니다! – etiennenoel