我正在使用php和sql我在下面创建了一个像这样的表:
我正在使用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;
是硬编码的:(
答案 0 :(得分:1)
您的最终代码如下:
echo ' <td>%: </td>';
echo ' <td>'. percent($row0['total'], $row2['total']) .'%</td>';
echo ' <td>'. percent($row1['total'], $row3['total']) .'%</td>';
echo ' </tr>';