HidRegisterMinidriver PHP spl_autoload_register는 자동 로딩 연구를 구현합니다.

WBOY
풀어 주다: 2016-07-29 08:47:25
원래의
1142명이 탐색했습니다.

여기에서는 실험을 통해 이 기능의 몇 가지 특징에 대해 설명합니다.
함수 프로토타입
bool spl_autoload_register ([ callback $autoload_function [, bool $throw = true [, bool $prepend = false ]]] )
버전 호환
PHP 5 >= 5.1.2
실험 과정
첫 번째 단계는 spl_autoload_register() 함수를 사용하여 load() 메서드를 등록하는 것입니다

코드 복사 코드는 다음과 같습니다. 다음:


function load(){
require_once 'lib.php'
}
spl_autoload_register('load'); ?>

lib.php 파일 코드는 다음과 같습니다

코드 복사코드는 다음과 같습니다

class className{
function method(){
echo '클래스의 메소드'
}
}
function onlyMethod( ){
echo 'method only';
}
?>

설명: lib.php 파일은 className 클래스이고 onlyMethod 함수입니다.
단계는 자동으로 로드된 클래스를 호출하는 것입니다.

코드 복사 코드는 다음과 같습니다.

$class = new className() ;
$class->method();
onlyMethod();

출력:
클래스의 메소드
메서드만
className 클래스에서 클래스 method() 함수를 호출하고 onlyMethod() 메서드를 동시에 호출하면 출력이 정상이고 오류가 발생하지 않습니다.
세 번째 단계, 함수를 직접 호출합니다.
onlyMethod()
설명: 인스턴스화된 클래스가 없습니다. lib.php 파일에서 onlyMethod() 함수를 직접 호출합니다.
출력:
치명적인 오류: '...(생략 경로)에서 정의되지 않은 함수 onlyMethod() 호출 '
네 번째 단계에서는 className 클래스를 인스턴스화한 다음
$class = new className()
onlyMethod()
출력: 메서드만
위의 4개에서- 단계 실험에 따르면 로드된 파일에 함수가 포함되어 있으면 내부 클래스를 인스턴스화해야 하며, 그렇지 않으면 정의되지 않은 함수 호출 오류가 발생하므로 사용 시 특별한 주의를 기울여야 합니다.

참여정보: spl_autoload_register

위 내용은 HidRegisterMinidriver의 내용을 포함하여 HidRegisterMinidriver PHP spl_autoload_register의 자동 로딩에 대한 연구를 소개한 내용입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿