Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für die ThinkPHP R-Methode

Beispiel für die ThinkPHP R-Methode

不言
不言Original
2018-06-06 14:18:222347Durchsuche

In diesem Artikel wird hauptsächlich die R-Methode von ThinkPHP vorgestellt. Freunde in Not können sich darauf beziehen

Die R-Methode von ThinkPHP wird verwendet, um die Betriebsmethode eines bestimmten Controllers aufzurufen, was eine weitere Verbesserung und Ergänzung darstellt der A-Methode.

R-Methodenaufrufformat:

R('[project://][group/]module/operation','parameters','controller layer name')

Zum Beispiel definieren wir eine Operationsmethode als:

class UserAction extends Action {
  public function detail($id){
    return M('User')->find($id);
  }
 }

Dann kann sie über R-Methoden in anderen Controllern aufgerufen werden. Diese Operationsmethode (Im Allgemeinen werden R-Methoden für modulübergreifende Aufrufe verwendet.)

$data = R('User/detail',array('5'));

bedeutet, dass die Detailmethode des Benutzercontrollers aufgerufen wird (die Detailmethode muss ein öffentlicher Typ sein) und gibt zurück. Der Wert besteht darin, Benutzerdaten mit der ID 5 abzufragen. Wenn die Operationsmethode, die Sie aufrufen möchten, keine Parameter hat, kann der zweite Parameter leer gelassen und direkt verwendet werden:

$data = R('User/detail');

kann auch gruppenübergreifend unterstützen und Projektaufrufe, zum Beispiel:

R('Admin/User/detail',array('5'));

bedeutet den Aufruf der Detailmethode des Benutzercontrollers unter der Admin-Gruppe.

R('Admin://User/detail',array('5'));

bedeutet, dass die Detailmethode des Benutzercontrollers unter dem Admin-Projekt aufgerufen wird.

Die offizielle Empfehlung lautet, nicht zu viele Aufrufe auf derselben Ebene durchzuführen, da dies sonst zu logischer Verwirrung führt. Die öffentlich aufgerufenen Teile sollten in separate Schnittstellen gekapselt werden, und Sie können die neue Funktion von ThinkPHP3.1 verwenden Mehrschichtiger Controller. Fügen Sie eine separate Controller-Schicht für Schnittstellenaufrufe hinzu, zum Beispiel fügen wir eine API-Controller-Schicht hinzu,

class UserApi extends Action {
  public function detail($id){
    return M('User')->find($id);
  }
 }

Verwenden Sie dann die R-Methode to call

$data = R('User/detail',array('5'),'Api');

Mit anderen Worten: Der dritte Parameter der R-Methode unterstützt die Angabe der Controller-Schicht des Aufrufs.
Gleichzeitig kann die R-Methode die Operationssuffixeinstellung C ('ACTION_SUFFIX') beim Aufrufen der Operationsmethode unterstützen. Wenn Sie das Operationsmethodensuffix festlegen, müssen Sie die aufrufende Methode von R trotzdem nicht ändern Verfahren.

Verwandte Empfehlungen:

Vollständiges Beispiel für Benutzerregistrierung, Anmeldung und Nachricht für ThinkPHP

Das obige ist der detaillierte Inhalt vonBeispiel für die ThinkPHP R-Methode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn