Maison >développement back-end >tutoriel php >Introduction aux méthodes d'encapsulation de données get et post de thinkphp5 (code)

Introduction aux méthodes d'encapsulation de données get et post de thinkphp5 (code)

不言
不言avant
2019-02-15 13:15:324939parcourir

Ce que cet article vous apporte est une introduction aux méthodes d'encapsulation de données (code) d'obtention et de publication de thinkphp5. J'espère que les amis dans le besoin pourront s'y référer. aide Vous avez aidé.

thinkphp5 obtient et publie l'encapsulation des données

1. vue (obtenir les données de la page HTML)

2. 🎜>1. Afficher (page html pour obtenir les données)

2. Contrôleur
<form action="index">
	<input type="text" name="status" value="{$where.nireid}" placeholder="状态" >
	<input type="text" name="atype" value="{$where.atype}" placeholder="类型" >
	<input type="text" name="nireid" value="{$where.nireid}" placeholder="昵称" >
	<button type="submit" > 搜索</button>
</form>

Normalement, nous fonctionnons comme ceci <.>

2. En fait, nous pouvons le faire

public function index(){ 
     $where[&#39;status&#39;] =input(&#39;get.status&#39;);
     $where[&#39;atype&#39;] =input(&#39;get.atype&#39;); 
     $where[&#39;nireid&#39;] =input(&#39;get.nireid&#39;);
     $this->assign(&#39;where&#39;,$where);
     $this->assign(UserExtractModel::systemPage($where));
     return $this->fetch();
}
(n'oubliez pas d'utiliser thinkRequest ;)

(Identique à la publication)

public function index(){ 
     $where = self::getMore([
          [&#39;status&#39;,&#39;&#39;],
          [&#39;atype&#39;,&#39;&#39;],
          [&#39;nireid&#39;,&#39;&#39;],
     ],$this->request);
     $this->assign(&#39;where&#39;,$where);
     $this->assign(UserExtractModel::systemPage($where));
     return $this->fetch();
}

public function getMore($params,Request $request=null,$suffix = false){
     if($request === null) $request = Request::instance();
     $p = [];
     $i = 0;
     foreach ($params as $param){
          if(!is_array($param)) {
               $p[$suffix == true ? $i++ : $param] = $request->get($param);
          }else{
               if(!isset($param[1])) $param[1] = null;
               if(!isset($param[2])) $param[2] = &#39;&#39;;
               $name = is_array($param[1]) ? $param[0].&#39;/a&#39; : $param[0];
               $p[$suffix == true ? $i++ : (isset($param[3]) ? $param[3] : $param[0])] = $request->get($name,$param[1],$param[2]);
          }
     }
     return $p;
}

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer