Steem Reputation Format Function in PHP

  • 时间:2020-09-08 11:08:55
  • 分类:网络文摘
  • 阅读:86 次

On Steem Blockchain, the reputation can be formatted in a logarithmetic (base 10) scale. Given recently, my PR to fix the reputation formatter in SteemJS is merged, I also translate this to PHP which I need.

1
2
3
4
5
6
7
8
9
function formatReputation($rep) {
    if (!$rep) return 25;
    $neg = $rep < 0;
    $rep = (string)$rep;
    $rep = $neg ? substr($rep, 1) : $rep;
    $v = log10(($rep > 0 ? $rep : -$rep) - 10) - 9;
    $v = $neg ? -$v : $v;
    return round($v * 9 + 25, 3);
}
function formatReputation($rep) {
    if (!$rep) return 25;
    $neg = $rep < 0;
    $rep = (string)$rep;
    $rep = $neg ? substr($rep, 1) : $rep;
    $v = log10(($rep > 0 ? $rep : -$rep) - 10) - 9;
    $v = $neg ? -$v : $v;
    return round($v * 9 + 25, 3);
}

Some Example usages:

1
2
3
4
5
6
echo formatReputation(95832978796820) . "\n";
echo formatReputation(10004392664120) . "\n";
echo formatReputation(30999525306309) . "\n";
echo formatReputation(-37765258368568) . "\n";
echo formatReputation(334486135407077) . "\n";
echo formatReputation(0) . "\n";
echo formatReputation(95832978796820) . "\n";
echo formatReputation(10004392664120) . "\n";
echo formatReputation(30999525306309) . "\n";
echo formatReputation(-37765258368568) . "\n";
echo formatReputation(334486135407077) . "\n";
echo formatReputation(0) . "\n";

The above PHP code should output the following values (you can use them to unit test the function):

69.834
61.002
65.422
-16.194
74.719
25
php Steem Reputation Format Function in PHP blockchain php SteemIt

php

–EOF (The Ultimate Computing & Technology Blog) —

推荐阅读:
糖尿病患者饮食误区 吃得太少致营养不良  把牛奶当水喝会带哪些健康危害  不适当多吃蔬菜也可能造成胃肠不适  帮助预防“三高”心血管疾病的食谱  白酒市场虚假宣传潜规则:年份造假工艺虚标  三种适合春分时节吃的常见养生食物  电脑族需要多吃一些明目功能的食物  有些食物发芽后营养价值会变得更高  春季健康食谱:可以适当吃些新鲜蚕豆  多个品牌婴幼儿配方乳粉被曝配方都一样 
评论列表
添加评论