php比较一组版本号大小,输出最新版本号


针对mysql无法正确比较0.0.0类型的版本号,有多个解决方案,如果是单文件可以根据时间判断最新,多文件可以加一个字段is_new;

也可以查出后比较版本大小,下面是php方法

 1 <?php
 2 $array=array('1.0.1','1.1.0','1.2.6','2.1.1','1.5.16','3.1.0','2.2.3','2.2.5','2.2.4','1.5.1','1.9.31');
 3 $newarray = array();
 4 foreach ($array as  $value) {
 5     $newarray[] = explode('.',$value);
 6 }
 7 
 8 $max = $newarray[0][0];
 9 foreach ($newarray as  $v){
10         if($v[0]>$max){
11             $max = $v[0];
12         }
13 }
14 
15 foreach ($newarray as $k=> $vl){
16     if($vl[0] != $max){
17         unset($newarray[$k]);
18     }
19 }
20 
21 $max = $newarray[0][1];
22 foreach ($newarray as  $v){
23         if($v[1]>$max){
24             $max = $v[1];
25         }
26 }
27 
28 foreach ($newarray as $k=> $vl){
29     if($vl[1] != $max){
30         unset($newarray[$k]);
31     }
32 }
33 
34 $max = $newarray[0][2];
35 foreach ($newarray as $k=> $v){
36         if($v[2]>$max){
37             $max = $v[2];
38         }
39 }
40 
41 foreach ($newarray as $k=> $vl){
42     if($vl[2] != $max){
43         unset($newarray[$k]);
44     }
45 }
46 
47 foreach ($newarray as  $ve) {
48     $ay = implode('.',$ve);
49 }
50 var_dump($ay);

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM