Dans thinkphp, la méthode R est utilisée pour appeler la méthode de fonctionnement d'un certain contrôleur, ce qui constitue une amélioration et un complément supplémentaires à la méthode A. Le format d'appel de la méthode R est "R('[project://]. [groupe/]module/Opération','paramètre','nom de la couche contrôleur')".
L'environnement d'exploitation de cet article : système Windows 10, ThinkPHP version 5, ordinateur Dell G3.
La méthode R est utilisée pour appeler la méthode de fonctionnement d'un certain contrôleur, ce qui est une amélioration et un complément supplémentaires de la méthode A.
Format d'appel de la méthode R :
R('[项目://][分组/]模块/操作','参数','控制器层名称')
Par exemple, nous définissons une méthode d'opération comme :
class UserAction extends Action { public function detail($id){ return M('User')->find($id); } }
Ensuite, vous pouvez appeler cette méthode d'opération dans d'autres contrôleurs via la méthode R (généralement, la méthode R est utilisée pour les appels inter-modules)
$data = R('User/detail',array('5'));
signifie appeler la méthode de détail du contrôleur utilisateur (la méthode de détail doit être de type public), et la valeur de retour consiste à interroger les données utilisateur avec l'ID 5. Si la méthode d'opération que vous souhaitez appeler n'a aucun paramètre, le deuxième paramètre peut être laissé vide et utilisé directement :
$data = R('User/detail');
Il peut également prendre en charge les appels inter-groupes et projets, par exemple :
R('Admin/User/detail',array('5'));
signifie appeler le contrôle utilisateur sous le groupe Admin La méthode de détail du conteneur.
R('Admin://User/detail',array('5'));
signifie appeler la méthode de détail du contrôleur utilisateur sous le projet Admin.
La recommandation officielle est de ne pas faire trop d'appels sur la même couche, ce qui entraînerait une confusion logique. Les parties appelées publiquement doivent être encapsulées dans des interfaces distinctes. Vous pouvez ajouter une couche de contrôleur distincte à l'aide de la nouvelle fonctionnalité de la version 3.1. contrôleur multicouche. Pour les appels d'interface, par exemple, nous ajoutons une couche de contrôleur Api,
class UserApi extends Action { public function detail($id){ return M('User')->find($id); } }
Ensuite, utilisons la méthode R pour appeler
$data = R('User/detail',array('5'),'Api');
C'est-à-dire que le troisième paramètre de la méthode R prend en charge la spécification de la couche de contrôleur. être appelé.
En même temps, la méthode R peut prendre en charge le paramètre de suffixe d'opération C (« ACTION_SUFFIX ») lors de l'appel de la méthode d'opération. Si vous définissez le suffixe de la méthode d'opération, vous n'avez toujours pas besoin de modifier la méthode d'appel de la méthode R. .
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!