Heim >Backend-Entwicklung >PHP-Tutorial >Die PHP-Schnittstelle implementiert die Drag-and-Drop-Sortierfunktion

Die PHP-Schnittstelle implementiert die Drag-and-Drop-Sortierfunktion

不言
不言Original
2018-04-23 15:00:182089Durchsuche

In diesem Artikel wird hauptsächlich die Drag-and-Drop-Sortierfunktion der PHP-Schnittstelle vorgestellt. Jetzt kann ich sie mit Ihnen teilen.

Listen-Drag-. Die Funktion „and-drop“ wird häufig in der Back-End-Schnittstellenverarbeitung verwendet. Interessierte Freunde sollten einen Blick darauf werfen >

Das Sortieren von Listen per Drag-and-Drop ist eine sehr häufige Funktion, aber der Umgang mit der Back-End-Schnittstelle ist ein kompliziertes Problem


Wie erreicht man das höchste Effizienz?

Lassen Sie uns zunächst ein Szenario analysieren. Angenommen, es gibt eine Seite mit zehn Datenelementen. Das sogenannte Ziehen bedeutet, die zehn Datenelemente hin und her zu ziehen Das Ziehen wirkt sich auf andere Daten aus. Wenn Sie beispielsweise das letzte Stück nach vorne ziehen, werden die nächsten neun Balken automatisch nach hinten verschoben und umgekehrt. Stellen Sie sich zunächst vor, dass die Sortiernummer festgelegt ist. So wie es zehn Stühle gibt und jeder Stuhl dort fixiert und bewegt wird. Die oben stehenden Personen sind die Personen oben, sodass die Daten auf anderen Seiten nicht beeinträchtigt werden und jeder die Tisch- und Stuhlnummern der anderen Personen zuvor ändert. Sie müssen also nicht darüber nachdenken, wie viel Sie zum Ranking hinzufügen müssen.

Schnittstellendesign:



Verwandte Empfehlungen:

//$ids 这十条数据的id集合,逗号隔开的字符串
//$oldIndex 原始位置,从0开始算
//$newIndex 要拖动的位置
function dragSort($ids,$oldIndex,$newIndex)
{
  //保证查找出来的数据跟前台提交的顺序一致,这里要order by field
  //id 主键 sort 排序值
  $sql = "select id,sort from 表名字 where id in ($ids) order by field(id, " . $ids . ") ";
  $list = "这里省略,就是去数据库找嘛";
  //id集合
  $idArr  = [];
  //排序集合
  $sortArr = [];
  foreach ($list as $item) {
    $idArr[]  = $item['id'];
    $sortArr[] = $item['sort'];
  }
  //记录要拖动的id
  $oldValue = $idArr[$oldIndex];
  //删除这个要拖动的id
  unset($idArr[$oldIndex]);
  //插入新的位置,并自动移位
  array_splice($idArr, $newIndex, 0, $oldValue);
  //重新设置排序
  $set = [];
  for ($i = 0; $i < count($idArr); $i++) {
     $set[$i][&#39;id&#39;]  = $idArr[$i];
     $set[$i][&#39;sort&#39;] = $sortArr[$i];
   }
  //保存到数据库省略
}

Detaillierte Erläuterung der PHP-Schnittstellenprogrammierung


Das obige ist der detaillierte Inhalt vonDie PHP-Schnittstelle implementiert die Drag-and-Drop-Sortierfunktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn