Maison  >  Article  >  développement back-end  >  php 云标签的简单范例

php 云标签的简单范例

WBOY
WBOYoriginal
2016-07-25 08:57:03952parcourir
本文介绍下,php实现云标签的一个简单例子,老外写的,很简炼。有需要的朋友,可以参考下人家的写法。

php 云标签的例子,代码如下:

<?php
/**
* @PHP 云标签
* @param $tags 标签列表
* @edit:bbs.it-home.org
*/
function printTagCloud($tags) {
  // $tags is the array
  
  arsort($tags);
  
  $max_size = 32; // max font size in pixels
  $min_size = 12; // min font size in pixels
  
  // largest and smallest array values
  $max_qty = max(array_values($tags));
  $min_qty = min(array_values($tags));
  
  // find the range of values
  $spread = $max_qty - $min_qty;
  if ($spread == 0) { // we don't want to divide by zero
    $spread = 1;
  }
  
  // set the font-size increment
  $step = ($max_size - $min_size) / ($spread);
  
  // loop through the tag array
  foreach ($tags as $key => $value) {
    // calculate font-size
    // find the $value in excess of $min_qty
    // multiply by the font-size increment ($size)
    // and add the $min_size set above
    $size = round($min_size + (($value - $min_qty) * $step));
  
    echo '' . $key . ' ';
  }
}

//调用示例
$tags = array('weddings' => 32, 'birthdays' => 41, 'landscapes' => 62, 'ham' => 51, 'chicken' => 23, 'food' => 91, 'turkey' => 47,
 'windows' => 82, 'apple' => 27);
printTagCloud($tags);
?>


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn