처음에는 하나 이상의 클래스를 사용할 때 일반적으로 클래스를 사용하기 전에 require 또는 include 기능을 사용하여 클래스를 소개합니다.
그러나 프로젝트에는 많은 클래스가 있으며, 우리 모두가 이러한 클래스를 사용할 때 이를 모두 하나의 파일로 가져와야 하는데 이는 한편으로는 더 번거롭고 효율적이지 않습니다. 반면에 일부 클래스를 삭제하면 해당 require 또는 include
문을 삭제해야 하는데, 이는 오류가 발생하기 쉽습니다. >위의 상황을 피하기 위해 PHP의 매직 함수 __autoload()를 사용하여 클래스를 여러 번 도입하는 상황을 방지했습니다.
그러나 또 새로운 문제가 나타났습니다. 우리 프로젝트 중 하나가 여러 프레임워크를 사용할 때 각 프레임워크
에서 __autoload() 함수를 사용하면 중복 함수 정의의 치명적인 오류가 발생합니다.
이 문제를 해결하기 위해 php5.3 이상 버전에서는 sql_autoload_register() 함수가 등장합니다. 이 함수를 사용하면
사용자 정의 자동 로드를 등록할 수 있습니다. 함수는 반복되는 함수 정의 문제를 해결합니다.
이제는 sql_autoload_register() 함수를 사용하여 클래스 자동 로드를 구현하는 경우가 많습니다. >저작권 안내: 이 글은 해당 블로거의 원본 글이므로 블로거의 허가 없이 복제할 수 없습니다.
위 내용은 내용적인 측면을 포함하여 PHP 객체지향 OOP 클래스 자동 로딩의 사고 과정을 소개하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.