Heim > Artikel > Backend-Entwicklung > ThinkPHP-Methode zur Implementierung einer Mehrfeld-Fuzzy-Matching-Abfrage
In diesem Artikel wird hauptsächlich die Methode von thinkPHP zum Implementieren von Fuzzy-Matching-Abfragen mit mehreren Feldern vorgestellt und die zugehörigen Modelloperationen und SQL-Anweisungen von thinkPHP für Fuzzy-Matching-Abfragen in Form von Beispielen analysiert 🎜>
Das Beispiel beschreibt, wie thinkPHP eine Mehrfeld-Fuzzy-Matching-Abfrage implementiert. Geben Sie es als Referenz an alle weiter. Die Details lauten wie folgt: Einführung: Manchmal muss die Abfrage mit mehreren Feldern übereinstimmen. Wenn Sie beispielsweise eine Adresse abfragen, besteht die Adresse aus mehreren Feldern. Es gibt Provinzen, Städte, Bezirke usw. sowie detaillierte Adressen. Wie wird zu diesem Zeitpunkt abgefragt?Implementieren Sie dieselben Abfragebedingungen in verschiedenen Feldern$User = M("User"); // 实例化User对象 $map['name|title'] = 'thinkphp'; // 把查询条件传入查询方法 $User->where($map)->select();Verwenden Sie es im Projekt
if ($address) { // 地址查询 $where['b.province|b.city|b.area|b.detail'] = array('like', '%'.$address.'%'); $this->assign('address', $address); }Diese Anforderung wird sehr einfach und sehr genau gelöst. Die generierte SQL-Anweisung lautet wie folgt
SELECT a.*,b.name,b.tel,b.province,b.city,b.area,b.detail,b.zipcode FROM sh_order a LEFT JOIN sh_member_address b on a.member_id = b.member_id and b.selected = 1 WHERE ( `store_id` = '10' ) AND ( a.member_id IN ('7') ) AND ( (b.province LIKE '%宿城区%') OR (b.city LIKE '%宿城区%') OR (b.area LIKE '%宿城区%') OR (b.detail LIKE '%宿城区%') ) ORDER BY addtime desc, sendtime asc, paytime desc LIMIT 0,10Wie aus der SQL-Anweisung ersichtlich ist, sind die Klammern AND und OR in where sind sehr geschickt kombiniert. Der Screenshot sieht wie folgt aus Verwandte Empfehlungen:
Framework Thinkphp5 einfache Implementierung des Verhaltens-Hooks Hook
Das obige ist der detaillierte Inhalt vonThinkPHP-Methode zur Implementierung einer Mehrfeld-Fuzzy-Matching-Abfrage. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!