比较 php 中的两个整数
Comparing two integers in php
我需要比较 PHP 中的两个整数。我有这个例子:
$a=00713132161838;
$b=713132161838;
我怎样才能使这个比较为真?我需要从 $a.
中删除前导零
我使用了number_format函数:
echo number_format($a,0,"","");
120370289
这是为什么?
您可以通过 ltrim
删除前导零
例子-
$str = ltrim($str, '0');
php 中数字前导零是八进制数,它打印 120370289
,这是 00713132161838
的十进制等价物。在php中有两种比较方式,
(`00713132161838`==713132161838) // return true
(`00713132161838`===713132161838) // return false and strict comparison
(00713132161838==713132161838)
// this will never give you true value because 007.....8 is the octal, number first converted to decimal and comparison will be there
因此您可以使用 single/double 引号将数字包裹起来,然后使用 intval
将它们转换为十进制整数值。有关更多信息,您可能需要阅读 intval function in php
我需要比较 PHP 中的两个整数。我有这个例子:
$a=00713132161838;
$b=713132161838;
我怎样才能使这个比较为真?我需要从 $a.
中删除前导零我使用了number_format函数:
echo number_format($a,0,"","");
120370289
这是为什么?
您可以通过 ltrim
删除前导零例子-
$str = ltrim($str, '0');
php 中数字前导零是八进制数,它打印 120370289
,这是 00713132161838
的十进制等价物。在php中有两种比较方式,
(`00713132161838`==713132161838) // return true
(`00713132161838`===713132161838) // return false and strict comparison
(00713132161838==713132161838)
// this will never give you true value because 007.....8 is the octal, number first converted to decimal and comparison will be there
因此您可以使用 single/double 引号将数字包裹起来,然后使用 intval
将它们转换为十进制整数值。有关更多信息,您可能需要阅读 intval function in php