PHP计数大约1000到K样式计数Facebook共享


PHP Count round thousand to a K style count Facebook Share

我有一个PHP代码的计数器,但我需要添加一些东西到计数器如下:

  • 1 k
  • 1100 k
  • 1200 k等
  • 2 k
  • 2100 k等。和
  • 2 m
  • 2500

现在我在PHP中完成了这个计数器。

<?php function get_likes($url) {
  $json_string = file_get_contents('http://graph.facebook.com/?ids=' . $url);
  $json = json_decode($json_string, true);
  return intval( $json[$url]['shares'] );
}?>

节目

<?php echo get_likes(http://url...); ?>

尝试将值传递给这个简单的函数:

function kilomega( $val ) {
    if( $val < 1000 ) return $val;
    $val = (int)($val/1000);
    if( $val < 1000 ) return "${val}k";
    $val = (int)($val/1000);
    return "${val}m";
}

不使用echo显示,而是检查大小:

<?php
 $num_likes = get_likes(http://url...); 
 if($num_likes < 1000){
   echo num_likes;
 }elseif($num_likes > 100000 ){
    echo $num_likes/100000 + "M";
 }else{
    echo $num_likes/1000 + "K";
 }
?>

…你可能还需要将这些值四舍五入到精度1.1k而不是实际的1.117k例如这里有一个PHP文档的链接将这些值四舍五入到PHP

中的精度