php - 更改流行标签的字体大小

标签 php mysql

我在表格中有几个静态标签。

我正在尝试跟踪静态标签的点击次数,我在其他网站上看到(这确实很好)流行标签的大小发生变化。

看看这张图片: enter image description here 该图像显示了预期的输出。

表格如下所示:

+-----------+--------+
|    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/

相关文章:

javascript - 如何使用 JavaScript 显示 blob

php - MySQL 返回行,其中列包含由数组定义的类别(并为结果添加权重)

Mysql选择一个字段需要不同的条件

php - 当 error_log 不产生新条目时,如何调试 HTTP 错误 500 消息?

php - 为什么PHP6的书还没出就写出来了?

php - token 中的段数错误(OAuth Google Api with php)

php - 长轮询导致数据库错误

mysql - 是第二代 Cloud SQL。与 mysqldump 命令兼容?

Mysql:获取group by的前x条记录

php - 为什么 php 将 $_FILES 值按名称、类型而不是输入文件名的顺序分组?