PHP 클래스 자동로딩

1 개념[ | ]

  • 다른 PHP 파일을 로딩할 때 아래와 같이 쓰는데, 파일이 많아지면 목록이 길어지는 문제가 있음
include "파일1.php";
include "파일2.php";
  • PHP 자동로딩으로 include 목록을 줄일 수 있음
  • PHP5에 spl_autoload_register() 함수를 이용클래스 자동로딩
  • 유사기능 함수로 __autoload() 가 존재하나 사용을 권장하지 않음

2 spl_autoload_register() 기능[ | ]

  • 실행 중인 현 시점을 기준으로 클레스나 인터페이스가 정의되어 있지 않으면 자동으로 로드 될 수 있도록해줌.

3 spl_autoload_register() 예제[ | ]

정의 되지 않은 myClass를 생성을 시도하면 spl_autoload_register()를 통해 등록된 myLoader가 자동 호출되며 myClass를 출력하게됨

                                                              
function myLoader($class)                                     
{                                                             
    echo $class;                                              
    //include "./".$class.".php";                             
}                                                             
                                                              
spl_autoload_register('myLoader');                            
                                                              
$cMyClass = new myClass();
# myClass

4 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}