首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >品牌号:金银铜牌

品牌号:金银铜牌
EN

Stack Overflow用户
提问于 2016-03-06 00:23:43
回答 1查看 252关注 0票数 0

我的问题是:我想要一个工作号码,这就是我得到的:

代码语言:javascript
复制
$mynumber=7915503;
echo substr($mynumber, 0, 3)." Gold ". substr($mynumber, 3, 2)." Silver " . substr($mynumber, 5, 2)." Bronze ";

有了这个号码,就行了。产量: 791金55银03铜

但是,如果我把数字改为9,它会输出:9金银青铜,我想把数字9放进去,输出:0黄金0银9青铜

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-06 00:49:25

很可能有更聪明的解决方案..。

代码语言:javascript
复制
<?php
$data = array(7915503, 9, 11, 211, 2211, 32211,332211, 3332211);

foreach( $data as $x ) {
    echo $x, ' -> ';
    $bronze = substr($x, -2); $x = substr($x, 0, -strlen($bronze));
    $silver = substr($x, -2); $x = substr($x, 0, -strlen($silver));
    $gold = substr($x, -3);

    printf("gold:%d silver:%d bronze:%d\r\n", $gold, $silver, $bronze);
}

版画

代码语言:javascript
复制
7915503 -> gold:791 silver:55 bronze:3
9 -> gold:0 silver:0 bronze:9
11 -> gold:0 silver:0 bronze:11
211 -> gold:0 silver:2 bronze:11
2211 -> gold:0 silver:22 bronze:11
32211 -> gold:3 silver:22 bronze:11
332211 -> gold:33 silver:22 bronze:11
3332211 -> gold:333 silver:22 bronze:11

编辑:噢,是的,有:

代码语言:javascript
复制
foreach( $data as $x ) {
    echo $x, ' -> ';
    $bronze = $x % 100;
    $silver = ($x / 100 ) % 100;
    $gold = ($x / 10000 ) % 1000;

    printf("gold:%d silver:%d bronze:%d\r\n", $gold, $silver, $bronze);
}

同样的输出。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35821606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档