Php 按日期排序数组(需要分解)

Php 按日期排序数组(需要分解),php,Php,我正在努力对包含日期的数组进行排序。我尝试了几种方法,但都没有成功地对这个数组进行排序(使用explode/strotime提取日期,然后合并和数组_multisort…),我仍然被卡住了 我使用这样的数组: array ( [0] => "blabla 2015-01-01" [1] => "blabla2 2016-01-01" [2] => "blabla3 2010-01-01" ) 我的目标是按日期(DESC或ASC)对该数组进行排序 ps:在blabla和日期之间

我正在努力对包含日期的数组进行排序。我尝试了几种方法,但都没有成功地对这个数组进行排序(使用explode/strotime提取日期,然后合并和数组_multisort…),我仍然被卡住了

我使用这样的数组:

array (
[0] => "blabla 2015-01-01"
[1] => "blabla2 2016-01-01"
[2] => "blabla3 2010-01-01"
)
我的目标是按日期(DESC或ASC)对该数组进行排序 ps:在blabla和日期之间有一个表格

我非常感谢任何能给我一点帮助的人
谢谢

假设您的输入存储在变量
$data
中,并且字符串以制表符分隔,则可以执行以下操作:

usort($data, function ($a, $b) {
    return strcmp(explode("\t", $a)[1], explode("\t", $b)[1]);
});

这只查看比较中的第二个字段

嗨,欢迎来到StackOverflow!为了帮助您,我们需要在问题中查看您的代码。请收集相关代码并张贴在此处。有关更多信息,请参阅。您好,谢谢您的回答!。是否可以对explode执行相同的操作以提取日期?(在我的实际工作数组中,日期字段不在末尾)哦,有没有办法检查usort函数是否对数组进行了“有效”(或不有效)排序?如果由于某种原因,
usort
失败,它将返回
false
,但只有在第一个参数中传递的数组不是数组时才会出现这种情况。否则你可以确定数组是按它排序的。嗯,明白了。我的意思是“如何检查usort是否影响数组值的顺序”?(在某些情况下,我的数组最初会正确排序,usort不会对值重新排序,而在其他情况下,我的数组最初不会排序,usort函数会对数组重新排序)…您找到了它;)