Php 如何将带文本的字符串数字转换为数字
我有一个这样的数字:342.50欧元。如何仅列出数字:342.50 我试过了,但这不是我想要的结果Php 如何将带文本的字符串数字转换为数字,php,Php,我有一个这样的数字:342.50欧元。如何仅列出数字:342.50 我试过了,但这不是我想要的结果 $str = '342.50 EUR'; preg_match_all('!\d+!', $str, $matches); print_r($matches); 结果:Array([0]=>Array([0]=>342[1]=>00))如果您对丢失最后一个0感到满意,那么您可以简单地使用: 就这么简单 $str = +'342.50 EUR'; 或 这样,就不需要知道数字的类型(int或flo
$str = '342.50 EUR';
preg_match_all('!\d+!', $str, $matches);
print_r($matches);
结果:
Array([0]=>Array([0]=>342[1]=>00))
如果您对丢失最后一个0
感到满意,那么您可以简单地使用:
就这么简单
$str = +'342.50 EUR';
或
这样,就不需要知道数字的类型(int或float)
这是
0+'342.50欧元'
的精简版。PHP将把字符串转换为它能在其中找到的第一个数字部分。如果没有数字,则结果为零。您可以通过两个步骤完成此操作:
$string = '342.50 EUR';
$string = str_replace(" EUR", "", $string);
$float_value_of_string = floatval($string);
echo $float_value_of_string; //342.50
您可以将其转换为浮动:
$str = '342.50 EUR';
$float = floatval($str);
之后,您可以选择以数字\格式显示的小数位数:
echo(number_format($float, 2));
$str = '342.50 EUR';
$float = floatval($str);
echo(number_format($float, 2));