2010-11-25 6 views
0

클래스를 자동로드 할 때이 오류가 발생합니다.클래스를 자동로드하려고 할 때이 오류가 발생합니다.

이 클래스를 myclass.php 파일에 선언하고 test.php에서 인스턴스화합니다. 하지만 xammp에 클래스를 찾을 수 없습니다. _autoload 함수는 PHP에서 대소 문자를 구분합니다.

class MyClass { 
//some properties and methods 
} 

function __autoload($class_name) { 
require_once($class_name.".php"); 
} 

$myclass = new MyClass(); 

누구나 무슨 문제인지 알고 계십니까?

답변

0

__autoload에 의해 발생한 것이 당신이 당신의 myclass.php 부여됨 문제에 올바르게 MyClass을 정의해야합니다.

0

PHP의 클래스 이름과 함수 이름은 대소 문자를 구분하지 않지만 OS 파일 시스템이 대소 문자를 구분할 수 있기 때문에 require* 또는 include*을 사용할 때 오토로더는 정확한 대소 문자를 사용해야합니다. 오토로더가 상대 경로를 사용하는 경우 호출 된 클래스가 PHP include_path에 있는지 확인하십시오. 오류가 실패하면 require_once 밖으로 던져 것 class not found 대신 file not found 때문에

관련 문제