我想对一个通常包含姓名和电子邮件地址的数组进行排序。问题是电子邮件地址显示在最后,即使它们可能以'a'开头
e.g。
$myarray = ("Alex Mayfeild", "David Beckham", "Oliver Twist", "ant.stev@wherever.com", "peter.pan@neverland.com", ........) //and so on
使用php的排序函数排序数组时,“ant.stev@wherever.com”将显示接近结尾,即使我希望实现的功能是让他出现在Alex之后。
基于自然排序的natcasesort和natsource函数似乎失败了。 更正:natcasesource工作时按照文档中的说明返回true。谢谢@meagar
无论如何都要实现所要求的功能。谢谢你的帮助。这是非常赞赏。
答案 0 :(得分:2)
sort()
区分大小写,因为它根据字母ASCII值进行排序。
尝试natcasesort()
,如果你也想“使用不区分大小写的'自然顺序'算法对数组进行排序”。
答案 1 :(得分:-1)
我觉得sort($myarray, SORT_STRING|SORT_FLAG_CASE);
应该按照你想要的方式对数组进行排序。