thinkphp big d 메소드는 ThinkPHP 프레임워크에 의한 모델 클래스 인스턴스화를 캡슐화하는 데 사용되며, 프로젝트 간 및 그룹 호출을 지원합니다. User = D('User');"는 현재 프로젝트의 사용자 정의 모델을 인스턴스화하는 것을 의미합니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, ThinkPHP 버전 5, Dell G3 컴퓨터.
thinkphp big d 방법을 사용하는 방법은 무엇입니까?
D 메소드
D 메소드는 사용자 정의 모델 클래스를 인스턴스화하는 데 사용됩니다. 이는 ThinkPHP 프레임워크에 의한 모델 클래스 인스턴스화를 캡슐화하고 크로스 프로젝트를 지원합니다. 호출 형식은 다음과 같습니다.
D('[项目://][分组/]模型','模型层名称')
메서드의 반환 값은 인스턴스화된 모델 객체입니다.
D 메서드는 모델 클래스를 자동으로 감지할 수 있습니다. 사용자 정의 모델 클래스가 존재하지 않으면 모델 기본 클래스가 인스턴스화되지 않습니다. 반복됩니다. 인스턴스화로 이동합니다.
D 메서드의 가장 일반적인 용도는 현재 프로젝트의 사용자 정의 모델을 인스턴스화하는 것입니다. 예:
// 实例化User模型 $User = D('User');
는 현재 프로젝트에서 Lib/Model/UserModel.class.php 파일을 가져온 다음 UserModel을 인스턴스화합니다. 따라서 실제 코드는 다음과 같을 수 있습니다.
import('@.Model.UserModel'); $User = new UserModel();
그러나 D 메서드를 사용하는 경우 UserModel 클래스가 없으면 자동으로
new Model('User');
를 호출하므로 다시 인스턴스화할 필요가 없습니다. 두 번째로 호출되므로 개체 인스턴스화 오버헤드가 어느 정도 줄어들 수 있습니다.
D 방법은 그룹 간 및 프로젝트 인스턴스화 모델을 지원할 수 있습니다. 예:
//实例化Admin项目的User模型 D('Admin://User') //实例化Admin分组的User模型 D('Admin/User')
참고: 프로젝트 간 호출 모델을 구현하려면 두 프로젝트의 디렉터리 구조가 병렬인지 확인해야 합니다.
버전 3.1부터 계층적 모델에 대한 추가 지원으로 인해 D 메서드는 다른 모델도 인스턴스화할 수 있습니다. 예:
// 实例化UserService类 $User = D('User','Service'); // 实例化UserLogic类 $User = D('User','Logic');
D('User','Service');
는 Lib/Service/UserService.class.php를 가져와 인스턴스화합니다. 이는 다음과 같습니다. 다음 코드:
import('@.Service.UserService'); $User = new UserSerivce();
추천 학습: "thinkPHP 비디오 튜토리얼"
위 내용은 thinkphp big d 방법을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!