2010-09-02

Función en PHP para generar una nube de etiquetas

  1. function getCloud( $data = array(), $minFontSize = 12, $maxFontSize = 30 ) {  
  2.     $minminimumCount = min($data);  
  3.     $maxmaximumCount = max($data);  
  4.     $spread = $maximumCount - $minimumCount;  
  5.     $cloudHTML = '';  
  6.     $cloudTags = array();  
  7.       
  8.     $spread == 0 && $spread = 1;  
  9.       
  10.     foreach( $data as $tag => $count ) {  
  11.         $size = $minFontSize + ( $count - $minimumCount )* ( $maxFontSize - $minFontSize ) / $spread;  
  12.         $cloudTags[] = '<a style="font-size: ' . floor( $size ) . 'px'. '" class="tag_cloud" href="#" title="\'' . $tag .'\' returned a count of ' . $count . '">'.htmlspecialchars(stripslashes( $tag ) ) . '</a>';  
  13.     }  
  14.     return join( "\n", $cloudTags ) . "\n";  
  15. }  
Esta función y algunas más, todas ellas muy interesantes en Handy PHP Code Snippets.

No hay comentarios: