Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP计数千分之一到K型计数Facebook共享_Php_Facebook - Fatal编程技术网

PHP计数千分之一到K型计数Facebook共享

PHP计数千分之一到K型计数Facebook共享,php,facebook,Php,Facebook,我有一个计数器的PHP代码,但我需要向计数器添加如下内容: 1k 1100k 1200k等 2k 2100k等。 及 2米 2500米 现在我已经用PHP完成了这个计数器 <?php function get_likes($url) { $json_string = file_get_contents('http://graph.facebook.com/?ids=' . $url); $json = json_decode($json_string, true); ret

我有一个计数器的PHP代码,但我需要向计数器添加如下内容:

  • 1k
  • 1100k
  • 1200k等
  • 2k
  • 2100k等。 及
  • 2米
  • 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";
}
功能千兆($val){
如果($val<1000)返回$val;
$val=(整数)(val/1000美元);
如果($val<1000)返回“${val}k”;
$val=(整数)(val/1000美元);
返回“${val}m”;
}

检查尺寸,而不是仅显示回声,以便:

<?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文档的链接,以舍入到您想要的精度

任何特定问题?我认为@paddy code更干净、更好,我会使用他的,尽管您也会希望在某个时候舍入这些值