获得2个数字的百分比

时间:2017-04-11 08:16:58

标签: php mysql

我正在使用php和sql我在下面创建了一个像这样的表:

enter image description here

我正在使用mysql获取所有数据,就像你在图片中看到的那样。现在我需要计算这两个数字的百分比,例如301和197 =%34.55 我很快就在脑子里做了这个,但是我怎么能在php中为这个做一个方法。

我也尝试过这个PHP代码,但是这很好但是当我复制它并更改一些代码时,它在我的表中不起作用。

<?php

$row0 = 197;
$row1 = 301;

function percent($row0, $row1) {
    echo number_format((1 - $row0 / $row1) * 100, 2);
}

percent($row0, $row1);

这是我制作的表格:

echo '<table id="tablenl" class="table table-striped">';
echo '             <div class="container">'; 
echo '  <thead>';
echo '     <tr class="bg-primary">';
echo '    <th>Total Amount:</th>';
echo '    <th>Last Year</th>';
echo '    <th>YTD</th>';
echo '  </tr>';
echo '  <tr>';
echo '    <td>All countries: </td>';
echo '       <td><b>€ K'.$row0['total'].'</b></td>';
echo '       <td><b>€ K'.$row1['total'].'</b></td>';
echo '  </tr>';
echo '  <tr>';
echo '    <td>Netherlands: </td>';
echo '       <td><b>€ K'.$row2['total'].'</b></td>';
echo '       <td><b>€ K'.$row3['total'].'</b></td>';
echo '  </tr>';
echo '  <tr>';
echo '    <td>%: </td>';
echo '       <td>%</td>';
echo '       <td>%</td>';
echo '  </tr>';
echo '   </tbody>';
echo '</table>';
echo '</div>';

----------这些是来自我的数据库的真实数字!!!

这种方式似乎工作正常:

echo '<table id="tablenl" class="table table-striped">';
echo '             <div class="container">'; 
echo '  <thead>';
echo '     <tr class="bg-primary">';
echo '    <th>Total Amount:</th>';
echo '    <th>Last Year</th>';
echo '    <th>YTD</th>';
echo '  </tr>';
echo '  <tr>';
echo '    <td>All countries: </td>';
echo '       <td><b>€ K'.$row0['total'].'</b></td>';
echo '       <td><b>€ K'.$row1['total'].'</b></td>';
echo '  </tr>';
echo '  <tr>';
echo '    <td>Netherlands: </td>';
echo '       <td><b>€ K'.$row2['total'].'</b></td>';
echo '       <td><b>€ K'.$row3['total'].'</b></td>';
echo '  </tr>';
echo '  <tr>';
echo '    <td>%: </td>';
$row0 = 197;
$row1 = 301;

function percent($row0, $row1) {
echo '       <td>'.number_format((1 - $row0 / $row1) * 100, 2);
}

percent($row0, $row1);
'</td>';
echo '       <td>%</td>';
echo '  </tr>';
echo '   </tbody>';
echo '</table>';
echo '</div>';

但 $ row0 = 197; $ row1 = 301;

是硬编码的:(

1 个答案:

答案 0 :(得分:1)

您的最终代码如下:

echo '    <td>%: </td>';
echo '       <td>'. percent($row0['total'], $row2['total']) .'%</td>';
echo '       <td>'. percent($row1['total'], $row3['total']) .'%</td>';
echo '  </tr>';