如何在php中将字符串转换为整数

如何在php中将字符串转换为整数,php,Php,我有一个变量$var1=“21855.00”。我已经尝试过使用preg\u replace和str\u replace,但我无法真正实现我想要的。 我希望将其回复为21855。如何使用PHP实现这一点?使用 $var1 = 21855.00; $varInt= intval($var1); 您也可以这样做 $varInt= (int)$var1; settype($var1, "integer"); 您还可以使用floor()进行四舍五入 $varInt= floor($var1); 您

我有一个变量
$var1=“21855.00”
。我已经尝试过使用
preg\u replace
str\u replace
,但我无法真正实现我想要的。 我希望将其回复为
21855
。如何使用PHP实现这一点?

使用

$var1 = 21855.00;
$varInt= intval($var1);
您也可以这样做

$varInt= (int)$var1;
settype($var1, "integer");
您还可以使用
floor()
进行四舍五入

$varInt= floor($var1);
您还可以使用
ceil()
进行汇总

$varInt= ceil($var1);
您也可以这样做

$varInt= (int)$var1;
settype($var1, "integer");

哈哈,我今天一定有很多时间可以浪费:)

你也可以试试这个-

$var1 = (int) 21855.00;

你可以用不同的方式来做

$myFloat  = 123456.78;
$firstWay = intval($myFloat);
$secondWay= (int) $myFloat;
您可以使用Hanky所述的intval()或使用
(int)
将值转换为整数。我相信使用
(int)$myFloat
比使用
intval($myFloat)
要快,请注意:

如果是文字
字符串
类似:

$var1 = '21,855.00'; // string(9) "21,855.00"
您也可以这样做:

$var1 = '21,855.00';
$var2 = filter_var(strtok($var1, '.'), FILTER_SANITIZE_NUMBER_INT);
echo $var2; // 21855

或使用正则表达式:

$var1 = '21,855.00';
$var2 = (int) preg_replace('/(?<=\d),(?=\d{3}\b)/','', $var1);
var_dump($var2); // int(21855)
$var1='21855.00';
$var2=(int)preg_replace('/(?您可以尝试intval()
例如:


$var1=21855.00
是无效代码。您的意思是说您有一个字符串
“21855.00”
?是的,我很抱歉。谢谢你的更正。这强调了用真实代码而不是假设代码提问是多么重要。你刚才给出的9票以上的答案毫无用处。如果你的拼写错误是逗号,仍然有效,但你的拼写错误出现在这些引号中。我将投票结束这个问题,因为它有符号对其原始形式进行了不合理的修改,使得现有的大多数答案毫无用处。