Maison > Article > développement back-end > Utilisez thinkphp5.0 pour obtenir des informations, des variables et des paramètres de liaison
1. Constructeur :
La classe contrôleur doit hériter de la classe thinkController pour utiliser :
Method_initialize
Code :
<?php namespace appliancontroller;use thinkController;use thinkDb;use thinkRequest;class Index extends Controller { public function _initialize() { echo 'init|||'; } public function hello() { return 'hello'; } }
Regardez la sortie :
2. Méthode de préfixe :
['sauf' => 'Nom de la méthode, nom de la méthode'] :
représente ces méthodes à ne pas utiliser méthodes de préfixe,
['only' => 'Nom de la méthode, nom de la méthode'] :
indique que seules ces méthodes utilisent des méthodes de préfixe.
***********************************Ligne de démarcation******** * ***************************
L'attribut beforeActionList peut spécifier une méthode comme pré-opération pour d'autres méthodes ;
C'est-à-dire exécuté avant l'exécution
Code :
<?php namespace appliancontroller;use thinkController;use thinkDb;use thinkRequest;class Index extends Controller {protected $beforeActionList = [ 'first', 'second' => ['except'=>'hello'], 'three' => ['only'=>'hello'], ]; protected function first() { echo 'first<br/>'; } protected function second() { echo 'second<br/>'; } protected function three() { echo 'three<br/>'; } public function hello() { return 'hello'; } }
Regardez le résultat :
Il ne devrait afficher que bonjour Oui, mais à cause de l'opération précédente, trois méthodes sont affichées
Remarque : pour cette opération, le nom de la méthode doit être en minuscules
3. 🎜>
<?php namespace appliancontroller; use thinkController; use thinkDb; use thinkRequest; class Index extends Controller { public function index(){ $request = Request::instance(); // 获取当前域名 echo 'domain: ' . $request->domain() . '<br/>'; // 获取当前入口文件 echo 'file: ' . $request->baseFile() . '<br/>'; // 获取当前URL地址 不含域名 echo 'url: ' . $request->url() . '<br/>'; // 获取包含域名的完整URL地址 echo 'url with domain: ' . $request->url(true) . '<br/>'; // 获取当前URL地址 不含QUERY_STRING echo 'url without query: ' . $request->baseUrl() . '<br/>'; // 获取URL访问的ROOT地址 echo 'root:' . $request->root() . '<br/>'; // 获取URL访问的ROOT地址 echo 'root with domain: ' . $request->root(true) . '<br/>'; // 获取URL地址中的PATH_INFO信息 echo 'pathinfo: ' . $request->pathinfo() . '<br/>'; // 获取URL地址中的PATH_INFO信息 不含后缀 echo 'pathinfo: ' . $request->path() . '<br/>'; // 获取URL地址中的后缀信息 echo 'ext: ' . $request->ext() . '<br/>'; } }4. Manipuler les variables pour obtenir les variables PARAM Les variables PARAM sont une méthode d'acquisition de variables fournie par le framework pour identifier automatiquement les requêtes GET, POST ou PUT, et sont recommandés par le système pour obtenir les paramètres de la requête. Méthode, l'utilisation est la suivante : La détection, l'acquisition et le filtrage de sécurité des variables d'entrée globales peuvent être complétés via l'objet Request~
// 获取当前请求的name变量 Request::instance()->param('name'); // 获取当前请求的所有变量(经过过滤) Request::instance()->param(); // 获取当前请求的所有变量(原始数据) Request::instance()->param(false); // 获取当前请求的所有变量(包含上传文件) Request::instance()->param(true);
//获取REQUEST变量 Request::instance()->request('id'); // 获取某个request变量 Request::instance()->request(); // 获取全部的request变量(经过过滤) Request::instance()->request(false); // 获取全部的request原始变量数据5. Paramètres de liaison La méthode de liaison des paramètres est par défaut la liaison en fonction du nom de la variable
<?php public function read($id) { return 'id ='.$id; } public function archive($year = '2017',$month = '07') { return 'year ='.$year.'$month ='.$month; }Entrez l'URL : http:/ /localhost/index.php/lian/index/read/id/544 Sortie : Les paramètres liés par les noms de variables doivent être cohérents avec la variable noms transmis dans l'URL, mais l'ordre des paramètres n'a pas besoin d'être cohérent Si l'erreur ci-dessus est signalée, la raison de l'erreur est très simple, car lors de l'exécution de la méthode d'opération de lecture, le paramètre id doit être transmis, mais la méthode ne peut pas démarrer à partir de l'adresse URL. Obtenez les informations correctes sur le paramètre id. Puisque nous ne pouvons faire confiance à aucune entrée de l'utilisateur, nous vous recommandons d'ajouter une valeur par défaut au paramètre id de la méthode read 6. Le type de requête ThinkPHP5.0 utilise uniformément la classe thinkRequest pour gérer types de demandes. Obtenir le type de demande :
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!