Heim  >  Artikel  >  Backend-Entwicklung  >  Einführung in die Get- und Post-Datenkapselungsmethoden von thinkphp5 (Code)

Einführung in die Get- und Post-Datenkapselungsmethoden von thinkphp5 (Code)

不言
不言nach vorne
2019-02-15 13:15:324862Durchsuche

Dieser Artikel bietet Ihnen eine Einführung in die Datenkapselungsmethoden (Code) von thinkphp5. Freunde in Not können sich darauf beziehen Hilfe Du hast geholfen.

thinkphp5 Datenkapselung abrufen und veröffentlichen

1. Ansicht (Daten von der HTML-Seite abrufen)

2. Controller

1. Ansicht (HTML-Seite zum Abrufen von Daten)

<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>

2. Controller

1. Normalerweise arbeiten wir so

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();
}

2. Tatsächlich können wir dies tun

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;
}

(vergessen Sie nicht, thinkRequest zu verwenden;)
(Dasselbe wie im Beitrag)

Das obige ist der detaillierte Inhalt vonEinführung in die Get- und Post-Datenkapselungsmethoden von thinkphp5 (Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen