根据自定义条件对PHP值进行排序


Sorting PHP values based on custom criteria

我试图根据四个可能的值对一些数据进行排序,这些是我想要的值和顺序。。。

GK、DF、MF、FW-

如何修改下面的当前排序函数?我已经阅读了大约10篇不同的文章和查询,但无法理解:(

$sort = $_REQUEST['sort'];
if(!isset($sort))
{
    $sort = 'pos';
}

好吧,这在信息上有点小。。但假设你的例子是一个字符串。

$sort = $_REQUEST['sort'];
$sort = 'GK, DF, MF, FW'; // my assumption
if(!isset($sort))
{
  $arr  = explode(', ',$sort);
  $arr2 = array();
  if( in_array('GK',$arr) ) { $arr2[] = 'GK'; }
  if( in_array('DF',$arr) ) { $arr2[] = 'DF'; }
  if( in_array('MF',$arr) ) { $arr2[] = 'MF'; }
  if( in_array('FN',$arr) ) { $arr2[] = 'FN'; }
  $sort = implode(', ',$arr2); 
}

它很难看,但它能起作用。。以及对于4个可能的值。。

假设您使用数据库查询。。。你可以做一些类似的事情

SELECT * FROM table ORDER BY GK, DF, MF, FW