Heim > Artikel > Backend-Entwicklung > Detaillierte Erläuterung der ThinkPHP-Funktionen: D-Methode
Dieser Artikel stellt eine detaillierte Erklärung der ThinkPHP-Funktionen vor, die einen gewissen Referenzwert hat. Jetzt kann ich sie mit allen teilen. Freunde in Not können sich darauf beziehen
D('[Projekt://][Gruppe/]Modell','Name der Modellebene')
Der Rückgabewert der -Methode ist das instanziierte Modellobjekt . Die
D-Methode kann die Modellklasse automatisch erkennen. Wenn eine benutzerdefinierte Modellklasse vorhanden ist, wird sie instanziiert. Wenn sie nicht vorhanden ist, lautet die Modellbasisklasse
实
Gleichzeitig instanziierte Modelle werden nicht erneut instanziiert. Die häufigste Verwendung der
D-Methode besteht darin, ein benutzerdefiniertes Modell des aktuellen Projekts zu instanziieren, zum Beispiel:// 实例化User模型 $User = D('User');
importiert die Datei Lib/Model/UserModel.class.php unter dem aktuellen Projekt und instanziiert dann die UserModel-Klasse, sodass der tatsächliche Code möglicherweise dem folgenden entspricht:
import('@.Model.UserModel'); $User = new UserModel();
Aber wenn Sie die D-Methode verwenden und die UserModel-Klasse nicht existiert, wird sie automatisch aufgerufen
new Model('User');
und es ist nicht erforderlich, ihn beim zweiten Aufruf erneut zu instanziieren, was einen gewissen Betrag reduzieren kann Objektinstanziierungsaufwand.
D-Methode kann die Instanziierung von Modellen über Gruppen und Projekte hinweg unterstützen, zum Beispiel:
//实例化Admin项目的User模型 D('Admin://User') //实例化Admin分组的User模型 D('Admin/User')
Hinweis: Um das projektübergreifende Aufrufmodell zu implementieren, müssen Sie sicherstellen, dass die Verzeichnisstrukturen der beiden Projekte parallel sind.
Ab Version 3.1 kann die D-Methode aufgrund der zusätzlichen Unterstützung hierarchischer Modelle auch andere Modelle instanziieren, zum Beispiel:
// 实例化UserService类 $User = D('User','Service'); // 实例化UserLogic类 $User = D('User','Logic');
复制代码
D('User','Service');
importiert Lib/Service/UserService.class.php und instanziiert es, was dem folgenden Code entspricht:
import('@.Service.UserService'); $User = new UserSerivce();
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der ThinkPHP-Funktionen: D-Methode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!