首先,我是PHP的新手,所以我还在学习。我有一个PHP程序来显示MySQL上经常更改的行数。这是我用来显示计数和百分比的回声 -
echo"<tr><td>{$row['Name']}</td><td {$row['COUNT(tag_logs.tag_no)']}/75</td><td>{$row['(COUNT(tag_logs.tag_no)']}%</td></tr>
第一个计数功能正常。对于......的第二次迭代
{$row['(COUNT(tag_logs.tag_no)']}%
...我想将计数除以75并乘以100。
我试过将75分配给一个字符串,例如 -
$perc = 75;
我还尝试了一些变体来进行分割 -
{$row['(COUNT(tag_logs.tag_no)'/75]}%
{$row['(COUNT(tag_logs.tag_no)'/$perc]}%
但是,我没有运气,因为我不确定在哪里插入变量。这是我收到的错误 -
警告:第16行的/Library/WebServer/Documents/count.php中遇到非数字值
您需要在引用的字符串之外划分您正在读取的值。试试这个:
echo "<tr><td>{$row['Name']}</td><td>{$row['COUNT(tag_logs.tag_no)']}</td><td>" . round($row['COUNT(tag_logs.tag_no)'] / 75 * 100, 2) . "%</td></tr>";
我还建议您使用COUNT
上的别名重写您的查询,例如
COUNT(tag_logs.tag_no) AS tag_cnt
这样你就可以把它称为$row['tag_cnt']
而不是$row['COUNT(tag_logs.tag_no)']
。如果您稍后更改查询中的表达式,这也将节省您的时间,因为您也不必更改PHP。