如何在两个数字+1票证之间相加

时间:2018-11-12 13:18:22

标签: php loops while-loop

我有用户和用户优惠券的数据库列表,如果数字之间大于两个,我想为每个优惠券添加+1票。

例如:

100 between 200 = 1 ticket
200 between 300 = 2 ticket
300 between 400 = 3 ticket
.......
.......
1200 between 1300 = 12 ticket

例如,我放照片:

enter image description here

我的代码是:

$q=$db->query("SELECT DISTINCT client_id  FROM kuponlar ORDER BY client_id LIMIT 20");
 foreach($q as $cat){
    echo '<li id="'.$cat['client_id'].'" class="files">';  
    echo 'User ID: <a href="'.$cat['client_id'].'">'.$cat['client_id'].'</a>'; 
    echo '<ul class="sub-menu">';
    $linkq=$db->query("SELECT * FROM kuponlar WHERE client_id='" . $cat['client_id'] . "'"); 
    foreach($linkq as $link){
       echo '<li>Coupon ID: <a href="#">'.$link['kuponid'].'</a> - Coupon Price: '.$link['yatirimi'].' ₺  / Won Ticket: '.substr($link['yatirimi'], 0, 1).' </li>';
    }
    echo '</ul></li>';
}

4 个答案:

答案 0 :(得分:3)

如评论中所述;

  
      
  • 因此,如果数字为12000,结果是120?基本上除以100? –齐雷尔
  •   
  • 是@Qirel,这是完美的评论。我的意思是这样。 (...)– IsmailAltunören
  •   

简而言之,您想将数字除以100。然后必须对其进行下限运算,以获得一个完整的整数并去除所有小数点。

floor($link['yatirimi']/100);

您可以将其替换为substr(),然后整行显示

echo '<li>Coupon ID: <a href="#">'.$link['kuponid'].'</a> - Coupon Price: '.$link['yatirimi'].' ₺  / Won Ticket: '.floor($link['yatirimi']/100).' </li>';

答案 1 :(得分:2)

您可以使用floor()进行此操作:

http://php.net/manual/en/function.floor.php

  

地板-向下舍入分数

这应该可以解决问题:floor($link['yatirimi'] / 100)

用它代替您的substr

答案 2 :(得分:0)

您可以使用以下名称:$wonTicketsCount = round(($link['yatirimi'] / 100 ) - 0.5);代替substr($link['yatirimi'], 0, 1)

答案 3 :(得分:0)

如果仅使用数百步,请参考您的评论:

修改此行:

substr($link['yatirimi'], 0, 1)

此行将始终采用第一个数字。

通过:这个 除了两个倒数,它将取所有数字。

substr($link['yatirimi'],0,-2);

通过保留substr,它不适用于0-100之间的数字, 最好使用@Qirel的Anwser。