Der Inhalt dieses Artikels befasst sich mit dem Sortierimplementierungscode für unbegrenzte Spalten in thinkphp. Ich hoffe, dass er für Freunde hilfreich ist.
Wir haben in der Frage nicht erklärt, ob es sich um die unendliche Sortierung von TP5 oder die unendliche Sortierung von TP3 handelt, nur um Anfängern klar zu machen, dass die Implementierung dieser Funktionen nichts mit dem von Ihnen verwendeten Framework zu tun hat. Egal, ob Sie TP5 sind. Es spielt keine Rolle, ob es sich um TP3, Laravel oder Yii-Framework handelt. Was wir hervorheben, ist die Idee und die Methode zur Lösung des Problems. Bei der Demonstration spielt es keine Rolle, da ich TP3 verwende.
Das Sortieren unbegrenzter Spalten ist sehr einfach. Dieses Mal werden wir die Lösung in Form eines Blogbeitrags mit Ihnen teilen.
Bild oben:
Das Bild oben zeigt die von uns implementierte Klassifizierung auf unendlicher Ebene. Derzeit sollten wir auf zwei Felder achten , das Sortierfeld Die Werte sind alle 50, was der Standardwert ist. Als nächstes mache ich einen Screenshot der Datentabellenstruktur für alle
Die Sortierung im obigen Bild wird verwendet, um eine Sortier-PID zu erreichen, die verwendet wird, um eine unendliche Klassifizierung zu erreichen
Der Schlüssel zum Erreichen einer unendlichen Klassifizierung liegt darin, dass wir beim Schreiben des Sortierfelds den gesamten Code erhalten, aber nur eine Zeile verwenden:
[php] <form method="post" action=""> <table class="table table-bordered table-hover"> <thead class=""> <tr> <th width="6%" class="text-center">ID</th> <th width="6%" class="text-center">pid</th> <th width="8%" class="text-center">排序</th> <th>栏目名称</th> <th width="16%" class="text-center">操作</th> </tr> </thead> <tbody> <volist name="cateRes" id="cate"> <tr> <td align="center">{$cate.id}</td> <td align="center">{$cate.pid}</td> <td align="center"> <input type="text" name="sort[{$cate.id}]" value="{$cate.sort}" /></td> <td><?php echo str_repeat(‘-‘, $cate[‘level’]*8);?>{$cate.cate_name}</td> <td align="center"> <a href="" class="btn btn-primary btn-sm shiny"> <i class="fa fa-edit"></i> 编辑 </a> <a href="#" onClick="warning(‘确实要删除吗’, ”)" class="btn btn-danger btn-sm shiny"> <i class="fa fa-trash-o"></i> 删除 </a> </td> </tr> </volist> <tr> <td colspan="4"> <button type="button" tooltip="排序" style="margin-left:225px; width:50px;" class="btn btn-sm btn-azure btn-addon">排序</button> </td> </tr> </tbody> </table> </form> [/php]
Aus dem obigen Code können wir sehen, dass die gesamte Tabelle vorhanden ist in ein Formular eingepackt, da wir das Sortierfeld absenden wollen. Es wird also ein Formular benötigt.
Der Kerncode für unsere Implementierung der Infinitus-Spaltensortierung:
[php] <input type="text" name="sort[{$cate.id}]" value="{$cate.sort}" /> [/php]
Das ist es. Tatsächlich haben wir ein sort[]-Array zusammengestellt, und der Schlüssel jedes Elements des gesamten Arrays ist aktuelle Spalte. Die ID und der Wert sind die sortierten Werte der aktuellen Spalte, sodass wir, sobald wir das Array übermittelt haben, die Sortierung entsprechend der ID ändern können
Vollständiger Code:
[php] public function lst(){ $cate=D(‘Cate’); if(IS_POST){//排序 $data=I(‘sort’); foreach ($data as $k => $v) { $cate->where(array(‘id’=>$k))->save([‘sort’=>$v]); } return; } $cateRes=$cate->cateTree();//无限级分类树 $this->assign([ ‘cateRes’=>$cateRes, ]); $this->display(‘list’); } [/php]
Verwandte Empfehlungen:
Welche Methoden gibt es zum Abfangen von Zeichenfolgen? thinkphp5? (Zwei Methoden zum Erreichen)
Das obige ist der detaillierte Inhalt vonDer Sortierimplementierungscode für unendliche Spalten in thinkphp. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!