比较 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