$ver01 ='5.2.3.5';
$ver02 ='5.2.3.4';
function versionCompare($str01,$str02){
$arrA = explode('.', $str01);//将字符串转换成数字
$arrB = explode('.', $str02);
$lenth = max(count($arrA),count($arrB));//获取最大数组的长度循环
$i=0;
while($i<$lenth){
$compA = intval($arrA[$i]);
$compB = intval($arrB[$i]);
if($compA<0){
$compA= 0;
}
if($compB<0){
$compB = 0;
}
if($compA>$compB){
return '1';
}elseif($compB>$compA){
return '-1';
}elseif($i==$lenth-1){
return '0';
}
$i++;
}
}
echo versionCompare($ver01,$ver02);
$ver02 ='5.2.3.4';
function versionCompare($str01,$str02){
$arrA = explode('.', $str01);//将字符串转换成数字
$arrB = explode('.', $str02);
$lenth = max(count($arrA),count($arrB));//获取最大数组的长度循环
$i=0;
while($i<$lenth){
$compA = intval($arrA[$i]);
$compB = intval($arrB[$i]);
if($compA<0){
$compA= 0;
}
if($compB<0){
$compB = 0;
}
if($compA>$compB){
return '1';
}elseif($compB>$compA){
return '-1';
}elseif($i==$lenth-1){
return '0';
}
$i++;
}
}
echo versionCompare($ver01,$ver02);
本文介绍了一个用于比较软件版本号的PHP函数。该函数通过将版本号字符串拆分为数组,并逐位比较每个部分来确定两个版本之间的关系。具体实现包括处理不同长度的版本号以及负数的情况。
8861

被折叠的 条评论
为什么被折叠?



