PHP 用户评分基于 post 和阅读次数

PHP user rating based on post and read count

我正在尝试根据他们的 post 和阅读计数获得用户星级。

  1. 0 post,0 次阅读 – 0 星
  2. 3 post,3,000 次阅读 – 1 星
  3. 15 post,15,000 次阅读 – 2 星
  4. 25 post,30,000 次阅读 – 3 星
  5. 35 post,40,000 次阅读 – 4 星
  6. 50 post,70,000 次阅读 – 5 星

代码:

$read = 15000;
$news = 13;


if($read < 3000 || $news < 3){
    echo '0';   
}
else if(($read >= 3000 & $news >= 3)
        && ($read < 15000 & $news < 15)){
    echo '1';
}
else if(($read >= 15000 & $news >= 15)
        && ($read < 30000 & $news < 25)){
    echo '2';
}
else if(($read >= 30000 & $news >= 25)
        && ($read < 40000 & $news < 35)){
    echo '3';
}
else if(($read >= 40000 & $news >= 35)
        && ($read < 70000 & $news < 50)){
    echo '4';
}
else if($read >= 70000 & $news >= 50){
    echo '5';
}

这不太行..

检查这个,

<?php

$read = 50;
$post = 44;


if($post >= 50 && $read >= 70000){
    echo "5 stars";
}else if($post >= 35 && $read >= 40000){
    echo "4 stars";
}else if($post >= 25 && $read >= 30000){
    echo "3 stars";
}else if($post >= 15 && $read >= 15000){
    echo "2 stars";
}else if($post >= 3 && $read >= 3000){
    echo "1 stars";
}else{
    echo "0 stars";
}

?>

您的代码 "doesn't work" 现在因为它不匹配您的任何 if else 语句。如果您将代码更改为此,它应该可以使用给定的参数:

$read = 15000;
$news = 13;


if($read < 3000 || $news < 3){
    echo '0';   
}
else if(($read >= 3000 & $news >= 3)
        && ($read <= 15000 & $news <= 15)){
    echo '1';
}
else if(($read >= 15000 & $news >= 15)
        && ($read <= 30000 & $news <= 25)){
    echo '2';
}
else if(($read >= 30000 & $news >= 25)
        && ($read <= 40000 & $news <= 35)){
    echo '3';
}
else if(($read >= 40000 & $news >= 35)
        && ($read <= 70000 & $news <= 50)){
    echo '4';
}
else if($read >= 70000 & $news >= 50){
    echo '5';
}

我在 angular fiddle 中转载了它:http://jsfiddle.net/Lvc0u55v/10941/

你的第二个语句也应该检查 <=