Php 给定数组中的生日在输出中排序错误
我有一个文件,从数据库中读取生日,并为用户显示即将到来的生日。但排序似乎完全错了,有人能告诉我哪里错了吗?它只显示日和月,似乎是按天而不是按月排序 我尝试了多种排序选项,但都做不好 usort函数是一个正确的测试,但它什么也不做Php 给定数组中的生日在输出中排序错误,php,html,Php,Html,我有一个文件,从数据库中读取生日,并为用户显示即将到来的生日。但排序似乎完全错了,有人能告诉我哪里错了吗?它只显示日和月,似乎是按天而不是按月排序 我尝试了多种排序选项,但都做不好 usort函数是一个正确的测试,但它什么也不做 if($birthdays){ 回声“”; foreach($生日作为$项目){ $item->birthdate=str_replace(“/”、“-”、$item->birthdate); $time=strottime($item->birthdate); $ti
if($birthdays){
回声“”;
foreach($生日作为$项目){
$item->birthdate=str_replace(“/”、“-”、$item->birthdate);
$time=strottime($item->birthdate);
$time=日期('d.m',$time);
usort($item->生日,函数($a,$b){
返回substr($b,-3)-substr($a,-3);
});
$date=“{$time}”;
回声“;
}
回声“
”;
}
输出如下:
27.07
25.07
24.07
18.08
16.11
但应该是这样的:
24.07
25.07
27.07
18.08
16.11将月份放在日期之前,您可以正常排序。1月5日为0105,10月25日为1025
$arr = ["0727", "0725", "0724", "0818", "1116"];
sort($arr);
var_dump($arr);
给出:
array(5) {
[0]=>
string(4) "0724"
[1]=>
string(4) "0725"
[2]=>
string(4) "0727"
[3]=>
string(4) "0818"
[4]=>
string(4) "1116"
}
不需要花哨的排序“它只显示日和月”-当然,这就是
$time=date('d.m',$time)
中的d.m
部分;的意思是……是的,这更像是一个不必要的提示,很抱歉我无法编辑它。