[php] PHP 치명적 오류 : 클래스를 다시 선언 할 수 없습니다

누구 든지이 문제를 일으킬 수있는 것을 알고 있습니까?

PHP 치명적 오류 : 클래스를 다시 선언 할 수 없습니다



답변

이미 클래스를 만들었 음을 의미합니다.

예를 들어 :

class Foo {}

// some code here

class Foo {}

두 번째 Foo에서 오류가 발생합니다.


답변

같은 이름의 클래스가 두 번 이상 선언되었습니다. 여러 번 포함 할 수도 있습니다. 다른 파일을 포함시킬 때 다음과 같은 것을 사용해야합니다

include_once "something.php";

여러 포함을 방지합니다. 서로에 의해 긴 파일 체인이 포함될 수 있기 때문에 항상 명백한 것은 아니지만, 이것이 매우 쉬운 일입니다.


답변

페이지에서 클래스를 두 번 이상 선언하면 발생합니다. 해당 클래스를 if 문으로 래핑하여 (아래와 같이) 수정하거나 별도의 파일에 넣고 require_once()대신을 사용할 수 있습니다 include().

if (!class_exists('TestClass')) {
   // Put class TestClass here
}


답변

사용 include_once();-이것으로 코드는 한 번만 포함됩니다.


답변

PHP 라이브러리에서 내장 클래스를 사용하면 이런 일이 발생합니다. 클래스 이름을 Directory로 사용했는데 같은 오류가 발생했습니다. 먼저 오류가 발생하면 사용하는 클래스 이름이 내장 클래스 중 하나가 아닌지 확인하십시오.


답변

__construct메소드를 두 번 이상 정의한 경우에도이 오류가 발생할 수 있습니다 .


답변

때로는 PHP FastCGI의 일부 버그로 인해 발생합니다.

다시 시작하십시오. 우분투에서 그것은 :

service php-fastcgi restart