草庐IT

number-formatting

全部标签

php - number_format() php 删除尾随零

如果数字不是float/小数,number_format()是否有办法省略小数位?例如,我想要以下输入/输出组合:50.8=>50.850.23=>50.2350.0=>5050.00=>5050=>50有没有办法只用一个标准的number_format()来做到这一点? 最佳答案 您可以将0添加到格式化字符串中。它将删除尾随零。echonumber_format(3.0,1,".","")+0;//3更好的解决方案:上述解决方案不适用于特定的语言环境。所以在这种情况下,您只需将数字类型转换为float数据类型。注意:在将类型转换为

PHP float 未正确添加 - 缺少十进制值

我正在尝试获取包含数字的变量总数,有些可能是小数。我需要保留两位小数并使用number_format()函数。$total=$order->order->net+$order->order->deductions+$order->order->vat+$order->order->postage+$order->order->postage_tax;echonumber_format((float)$total,2,'.','');?>我注意到以下值加起来不正确,似乎忽略了小数点。总数应该是118.50,但我得到的是118.00。100+0+17.5+1+0我研究了这个并发现了以下内容

php - 使用 number_format 添加千位分隔符

我试图非常简单地获取变量$output中的数字,并将其转换为带有千位分隔符的数字。它当前输出的数字是49995,但我希望它显示为49,995。遇到了一些麻烦。帮忙?functiontwitter_followers($user='mytwitterusername'){//BuildTwitterapiurl$apiurl="http://api.twitter.com/1/users/show.json?screen_name={$user}";//cacherequest$transient_key=$user."_twitter_followers";//Ifcached(tra

php - date() 或 format_date() 返回 1970?

我有一个包含日期字段的表,该字段已正确填充。当我执行以下操作时date;?>工作正常;但是,当我用date()格式化它时或format_date()它只返回01/01/1970。如果有区别,它会先存储在一个数组中,然后再放入HTML表格中。 最佳答案 您可以使用以下内容(如果$mytable->date的格式适合strtotime())并根据您的需要采用第一个参数:date));?> 关于php-date()或format_date()返回1970?,我们在StackOverflow上找

PHP 正则表达式 : extract last number in filename

我需要一个正则表达式来提取一个数字,这个数字总是在用()包裹的文件的末尾。例如:Vacation(1).pngreturns1Vacation(MeandMom)(2).pngreturns2Vacation(5)(3).pngreturns3希望那里有一些正则表达式专家:) 最佳答案 随便写吧,$是主题的结尾:$pattern='/\((\d+)\)\.png$/';$number=preg_match($pattern,$subject,$matches)?$matches[1]:NULL;这是一个所谓的锚定模式,它工作得很好,

php - 转换数字 |整数到单词

我想将整数转换为单词,例如:29将变为二九,50将变为五十。我如何使用PHP实现此目的?这是我目前所拥有的,但没有提供所需的输出。$fees_so=$form_data_fees['field']['4'];$feesInWords=strval($fees_so);echo$feesInWords; 最佳答案 您可以使用NumberFormatter使用SPELLOUT上课:$nf=newNumberFormatter("en",NumberFormatter::SPELLOUT);echo$nf->format(1999);//

php - 格式化数字

我有一张表格,上面有这样的数字:19809.11982.01982.19它的货币。有没有我可以用来格式化这些数字的函数?19809,101982,001982,19 最佳答案 使用number_format很容易:number_format(value,number_of_decimals,"decimal_separator","thousand_separator")像这样:echonumber_format(19809.1,2,",","");这告诉数字有2位小数,逗号,作为小数分隔符,空格作为千位分隔符。输出将是:19809

PHP 日期格式() : How to format date from string value

我有一点PHP代码:$exd=date_create('01Dec,2015');$exd=date_format($exd,'Y-m-d');echo$exd;用于格式化日期。预期输出为2015-12-01但它返回2016-12-01。我错过了什么? 最佳答案 首先使用createFromFormat方法,提供输入格式:$exd=DateTime::createFromFormat('dM,Y','01Dec,2015');//arguments(,)$exd=date_format($exd,'Y-m-d');//thencho

php - eclipse PDT : How do I get it to format my PHP arrays like VIM?

我一直在努力让Eclipse像vim缩进一样格式化我的php数组。eclipse做了什么(按CTRL+SHIFT+F)'value1','key2'=>array('child_key1'=>'child_value1','child_key2'=>'child_value2',),);vim做了什么(按键:gg=G)'value1','key2'=>array('child_key1'=>'child_value1','child_key2'=>'child_value2',),);我试过在Preferences>PHP>CodeStyle>FormatterandPreferenc

php - 如何用前导 0 填充个位数

我正在循环一个由一位数和两位数组成的数组。打印这些值时,我需要确保所有值都显示为两位数。我需要一个解决方案,将零添加到一位数的前面,但保留两位数不变。换句话说,我想通过添加零将数字字符串“左填充”到最少两位数。如何更改我的代码以呈现值1到9的前导0?">预期结果:010203040506070809101112 最佳答案 ">您可能希望将sprintf的值保存到一个变量中以避免多次调用它。 关于php-如何用前导0填充个位数,我们在StackOverflow上找到一个类似的问题: