Steem Reputation Format Function in PHP

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

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) —

推荐阅读:
6·1游园作文500字  战争,你伤害了这些羽翼还未丰满的孩童作文600字  家乡的梓山作文  阅读点亮我的心灵作文300字  春节逛花市作文  在苦难中行走  百度正式上线快速收录功能  如何让百度快速收录网页?快用百度站长平台“快速收录”功能!  php和asp网站源码有什么不同?哪种代码语言更好?  装修公司网销业绩不好?原因和解决方法都在这里 
评论列表
添加评论