[英]Convert string word number into string number php
我有一个数字是一个值为“5300万”的字符串。
$number="53 MILLION";
我希望这个数字是53,000,000。 怎么会这样做? 我尝试使用number_format函数,但没有运气。
提前致谢!
$number="53 MILLION";
$number= str_replace($number, "MILLION", "000,000");
echo $number; //000,000 instead of 53,000,000
在耶稣所说的基础上,构建这些数字的一个简单功能是:
function declare_number($number_string){
$find_replace = array(
' HUNDRED' => '00',
' THOUSAND' => ',000',
' MILLION' => ',000,000',
' BILLION' => ',000,000,000'
);
return str_ireplace(array_keys($find_replace),$find_replace,$number_string);
}
这也可以转换8万= 800,000等。
为什么不拆分字符串,在数组中搜索“MILLION”子字符串,然后将其换成“000,000”,然后将它们全部重新组合在一起? 我想你可以使用空格进行拆分。
如果你只有百万号,那么使用:
$number = str_replace(' million', '000000', $number);
不知道PHP,但有一个算法
“5300万,二十万,八百”的算法:
大小字符串翻译表= [{“百万”,1000000},{“千”,1000}等...]
counter = 0
- 从字符串顶部到结束:
----直到逗号
------扫描整数 - “53”
------扫描尺寸字符串 - “百万”
------按大小字符串翻译乘以整数 - “53 * 1000000”
------加入主柜台 - 柜台+ =“53000000”
- - 环
- 结束
取决于你的问题的例子你的真实情况可能是:将53 MILLION 39 TOUSEND 334
转换为53,039,334
等。
因此算法将标记一个字符串,无论数字可用,在堆栈上记住它。 无论THOUSEND, MILLION, etc.
的THOUSEND, MILLION, etc.
一个可用,都可以将堆叠上的内容相乘并添加到数字中。 最后添加没有乘法的东西。 然后你有号码。
将数字转换为数字字符串(53039334),并在每个3位数字添加昏迷后从最后开始,在这里你有你需要的东西:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.