Fedora의 PHP에서 존재하지 않는 클래스 오류가 발생하는 이유는 무엇입니까?

Fedora의 PHP에서 존재하지 않는 클래스 오류가 발생하는 이유는 무엇입니까?

Fedora 15 설치에 Nginx/PHP(둘 다 Yum에서 설치) 환경을 설정했는데 이상한 문제가 발생했습니다.

Codeigniter(1.6)를 사용하는 일부 프로젝트가 있지만 다음 오류가 계속 발생합니다.

존재하지 않는 클래스: 콘텐츠

전체 출력은 PHP가 Content.php 파일 구문 분석을 시작하지만 중간에 중지되는 것과 거의 유사합니다.

{$var})) { $this->{$var} = ''; } $this->{$var} .= ob_get_clean() } }

오류가 발생했습니다.

존재하지 않는 클래스: 콘텐츠

Content.php의 내용은 다음과 같습니다.

<?

class Content {

    function capture() {
    ob_start();
    }

    function __get($name) {
    return '';
    }

    function content_for($var) {
    if (!isset($this->{$var})) { //It stops on this line
        $this->{$var} = '';
    }
    $this->{$var} .= ob_get_clean();
    }

}

나에게 이상한 점은 정확히 동일한 설정이 Ubuntu에서 잘 실행된다는 것입니다(이 설정을 사용하는 프로젝트는 한동안 실행되었으며 개발을 위해 몇 대의 Ubuntu 시스템에도 설정했지만 한 번도 본 적이 없습니다.) 이전에 이 질문을 받은 적이 있습니다. 저는 약간의 PHP를 사용하여 기본 웹사이트를 실행할 수 있을 뿐만 아니라 다른 프레임워크를 사용하는 몇 가지 프로젝트를 실행할 수 있으므로 일반적으로 PHP 자체가 작동한다는 것을 알고 있습니다.

내가 아는 한, Content.php에 도달하기 전에 여러 개의 다른 PHP 파일을 실행하므로(콘텐츠 로드를 시작하라는 지시를 내리는 지점까지 도달해야 함), PHP는 적어도 몇 년 동안 작동합니다. 그러다가 갑자기 죽은 것 같아요. 로그 파일에도 다른 오류가 없습니다.

이 오류의 원인은 무엇이며 어떻게 해결합니까?

답변1

php.iniFedora와 Ubuntu에서 사용되는 파일을 비교해야 합니다. 차이를 만드는 몇 가지 다른 설정이 있을 수 있습니다.

관련 정보