显示 1k 而不是 1,000
function restyle_text($input){
$input = number_format($input);
$input_count = substr_count($input, ',');
if($input_count != '0'){
if($input_count == '1'){
return substr($input, +4).'k';
} else if($input_count == '2'){
return substr($input, +8).'mil';
} else if($input_count == '3'){
return substr($input, +12).'bil';
} else {
return;
}
} else {
return $input;
}
}
这是我的代码,我认为它可以工作。显然不是..有人可以帮忙吗,因为我无法弄清楚这一点。
function restyle_text($input){
$input = number_format($input);
$input_count = substr_count($input, ',');
if($input_count != '0'){
if($input_count == '1'){
return substr($input, +4).'k';
} else if($input_count == '2'){
return substr($input, +8).'mil';
} else if($input_count == '3'){
return substr($input, +12).'bil';
} else {
return;
}
} else {
return $input;
}
}
This is the code I have, I thought it was working. apparently not.. can someone help since I can't figure this out.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
试试这个:
http://codepad.viper-7.com/jfa3uK
基本上,我认为你正在使用 <代码>substr()错误。
Try this:
http://codepad.viper-7.com/jfa3uK
Basically, I think you're using the
substr()
wrong.这是一种通用方法,不需要您使用
number_format
或进行字符串解析:这里有一个演示在几种情况下都可以正常工作。
Here's a generic way to do this that doesn't require you to use
number_format
or do string parsing:And here's a demo showing it working correctly for several cases.
我重写了该函数以使用数字的属性而不是使用字符串。
那应该更快。
如果我错过了您的任何要求,请告诉我:
I re-wrote the function to use the properties of numbers rather than playing with strings.
That should be faster.
Let me know if I missed any of your requirements:
我不想破坏这个时刻……但我认为这有点简单了。
只是改进@Indranil 答案,
例如
I do not want to spoil the moment... but I think this is a little more simplified.
Just improving @Indranil answer
e.g.
或者您也可以使用库它的工作原理是此处
只需安装
composer require stillat/numeral.php 和
Or you can too use library How it works is here
Juste install
composer require stillat/numeral.php
and