我在表格中有几个静态标签。
我正在尝试跟踪静态标签的点击次数,我在其他网站上看到(这确实很好)流行标签的大小发生变化。
表格如下所示:
+-----------+--------+
| tag | clicks |
+-----------+--------+
| Falun | 45 |
| Stockholm | 229 |
| Borlänge | 77 |
| ... | ... |
| ... | ... |
+-----------+--------+
更多的点击,“更大”的字体大小。但字体大小应最大为 40px,最小为 5px。
我如何从 MySQL 和 PHP 计算点击次数的差异并将其显示在 font-size
中?
SELECT tag, (SELECT COUNT(percentage) FROM tags) AS tag_size FROM 标签
然后
foreach($tags as $tag){
<a href="#" style="font-size: <?php echo $tag->tag_size ?>px"><?php echo $tag->tag ?></a>
}
非常抱歉伪代码,但我不知道该怎么做!
最佳答案
首先你需要找到最大点击次数:
SELECT MAX(`clicks`) FROM `tags`;
我们假设将其分配给名为 $max_clicks
的变量。然后,您需要根据该值缩放磅值。用于执行此操作的公式完全取决于您,但根据点击次数的平方根进行缩放应该会产生合理的结果:
if ($max_clicks > 0) { // Avoid divide-by-zero error if nothing has been clicked
$sqrt_max_clicks = sqrt($max_clicks);
$query = "SELECT `tag`, 5 + 35 * SQRT(`clicks`) / $sqrt_max_clicks FROM `tags`;"
// ... (Generate tag markup) ...
}
显然,5
是最小点大小,35
是最大和最小点大小之间的差值。我在这里假设您希望标 checkout 现在标签列表中,即使它们的点击次数为零。
关于php - 更改流行标签的字体大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34246371/