Php 我怎样才能加上?’;“点”;在最后两个数字之前
如何在最后两个数字前加一个点 让我们假设数字是正确的Php 我怎样才能加上?’;“点”;在最后两个数字之前,php,Php,如何在最后两个数字前加一个点 让我们假设数字是正确的 299 , 250 , 400 , 4500 , 20099 我想得到最后两位数字,并在前面加上点 i、 e 在使用php时,我是否错过了一些东西,或者这不会在php.net手册中实现 $number = 1234.5678; // english notation without thousands separator $english_format_number = number_format($number, 2, '.',
299 , 250 , 400 , 4500 , 20099
我想得到最后两位数字,并在前面加上点
i、 e
在使用php时,我是否错过了一些东西,或者这不会在php.net手册中实现
$number = 1234.5678;
// english notation without thousands separator
$english_format_number = number_format($number, 2, '.', '');
// 1234.57
根据@Roadirsh的版本,Substring_replace是一个更简单的选项,它可以实现真正需要的功能。肖恩的版本也将按照@Seannumber_格式($number/100,2,“,”)的注释工作代码>(此处包含以防删除注释)。我的版本将只处理带有现有小数点或add.00的数字
尽管预期的行为是数字将被四舍五入,但进一步的测试表明,如果它们已经是小数点的两位,则它们不会被四舍五入,如/100
部分所示。如果存在更多的小数位,则它们将四舍五入
我本来会删除我的版本,但在这里使用可能有用。您可以使用正则表达式
echo preg_replace('/(\d+)(\d{2})/', '$1.$2', '299 , 250 , 400 , 4500 , 20099');
输出:
2.99 , 2.50 , 4.00 , 45.00 , 200.99
演示:您可以使用该功能
如何使用和
只添加.00
,而不是将299
更改为2.99
请参见。如果您使用number\u格式($number/100,2,'.','')
2.99 , 2.50 , 4.00 , 45.00 , 200.99
substr_replace('299','.',-2,0);
<?php
$numbers = explode(' , ', '299 , 250 , 400 , 4500 , 20099');
$numbersHandled = array_map(function($e) {
return number_format($e/100, 2, '.', '');
}, $numbers);
print_r($numbersHandled);