基于不同的值在PHP中对数组进行排序

时间:2010-06-12 00:07:33

标签: php arrays

我有一个数组,其元素是name,reversed_name,first_initial和second_initial。典型的行是“Aaron Smith”,“Smith,Aaron”,“a”,“s”。数组中的每一行都具有first_initial或second_initial值“a”。

我需要按字母顺序显示行,但是基于“a”部分,因此将显示name或reversed_name。输出示例如下:

  • Aaron Smith
  • 艾博特,保罗
  • Adrian Jones
  • Anita Thompson
  • 阿瑟顿,苏珊

我真的不知道如何以这种方式对数组进行排序,所以我们非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

如果您有自定义排序条件,请使用usort

function Sorter($e1, $e2)
{
    return strcmp($e1['first_initial'], $e2['first_initial']);
}

usort($array, "Sorter");

strcmp是一个方便的函数,用于比较字符串并返回用于排序的正确的int代码。