Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 比较双十进制数_Php_Decimal - Fatal编程技术网

Php 比较双十进制数

Php 比较双十进制数,php,decimal,Php,Decimal,我想比较应用程序/软件的版本号,有时可能有两个小数点,例如: 1.0 1.1 1.0.01 1.0.1 2.0 2.5 3.0 等等等等 比较这些数字的正确方法是什么 我尝试了此操作,但出现错误: 解析错误:语法错误,第2行的/home/videocoo/public_html/dev/vc admin/test_cmp.php中出现意外的T_DNUMBER $a = 1.2.11; $b = 1.2.0; if($a > $b){ print"<br />a is

我想比较应用程序/软件的版本号,有时可能有两个小数点,例如:

1.0
1.1
1.0.01
1.0.1
2.0
2.5
3.0
等等等等

比较这些数字的正确方法是什么

我尝试了此操作,但出现错误:

解析错误:语法错误,第2行的/home/videocoo/public_html/dev/vc admin/test_cmp.php中出现意外的T_DNUMBER

$a = 1.2.11;
$b = 1.2.0;

if($a > $b){
    print"<br />a is greater";
} else {
    print"<br />b is greater";
}
$a=1.2.11;
$b=1.2.0;
如果($a>$b){
打印“
a大于”; }否则{ 打印“
b大于”; }

把数字做成字符串,用双引号括起来,这是不正确的吗?每次我测试不同的数字时,它似乎都给出了正确的比较。谢谢

将版本号作为字符串进行比较不起作用:检查
1.9
1.11
。您可以使用
version\u compare
代替:。

您要查找的函数是
version\u compare()


<?php
$versionA = '1.0.1';
$versionB = '1.0.2';

if (version_compare($versionA, $versionB) >= 0) {
    echo 'Version B is equal to or greater than Version A';
}

if (version_compare($versionA, $versionB, '<')) {
    echo 'Version A is less than Version B';
}
?>