Вход Регистрация
Файл: application/text_helper.php
Строк: 146
<?php
/**
*a text helper class
*
*@author                  The-Di-Lab
*@email                   thedilab@gmail.com
*@website                 www.the-di-lab.com
*@version               1.0
**/
class TextHelper 
{     
   
/*
   * this function adds links to email address in the string
   * @param string $text text string
   * @return string with email being added with links
   */
   
public function autoEmail($text
   {
        return 
preg_replace("/([a-z0-9_.-])+@(([a-z0-9-])+.)+([a-z0-9]{2,4})+/i"
                                
'<a href="mailto:$0">$0</a>'$text);
   }
   
   
/*
   * this function transforms http links to hyperlinks
   * @param string $text
   * @return string $text
   */
   
public function autoUrl($text
   {
           return 
preg_replace("#http://([A-z0-9./-]+)#"'<a href="$0">$0</a>'$text);
   }
   
   
/*
   * this function will shorten the string by $length, and append $end after that.
   * @param string $text
   * @param int $length, restricted length
   * @param int $end, append to the end of the string after it is shortten
   * @static
   */
   
public function truncate($text,  $length=100$end='...')
   {
        if(
strlen($text)>$length) {
            
$text substr($text,0,$length).$end;
        }
           return 
$text;
   }
      
   
/*
   * this function extracts string between $start and $end in $text
   * @param string $text 
   * @param string $start 
   * @param string $end 
   * @return string between $start and $end, '' if not found
   */
   
public function extractBetween($text,$start,$end
   {   
        if(
preg_match('/'.$start.'(.*)'.$end.'/',$text,$matches)){
            return 
$matches[1];
        }        
        return 
'';           
   }
   
   
/*
   * this function transforms $text to a SEO friendly urlencode string
   * @param string $text
   * @return SEO friendly string
   */
   
public function toSlug($text
   {
           
$text strtolower($text);
           
$text trim($text);
           
$text str_replace(array('-'' ''&'), array('_''-''and'), $text);
           return 
urlencode($text);
   }
   
   
/*
   * strips specified tags from the string
   * @param string $text
   * @param strig  $tags  array of tags   *
   * @return string
   * @access public
   */
   
public function stripTags($text,$tags
   {
           if(!
is_array($tags)){
               
$tags = array($tags);
           }
                      
           foreach(
$tags as $tag) {
            
$text preg_replace('/<' $tag'b[^>]*>/i'''$text);
            
$text preg_replace('/</' $tag '[^>]*>/i'''$text);
        }
        
           return 
$text;
   }
   
   
/*
   * remove img from string 
   * @param string $text
   * @return string
   * @access public
   */
   
public function stripImages($text
   {
           
$text preg_replace('/(<a[^>]*>)(<img[^>]+alt=")([^"]*)("[^>]*>)(</a>)/i''$1$3$5<br />'$text);
        
$text preg_replace('/(<img[^>]+alt=")([^"]*)("[^>]*>)/i''$2<br />'$text);
        
$text preg_replace('/<img[^>]*>/i'''$text);       
        return 
$text;
   }
   
   
/*
   * strip scripts and stylesheets from string
   * string  $text   
   * @return string
   * @access public
   */
   
public function stripScripts($text
   {
           return 
preg_replace('/(<link[^>]+rel="[^"]*stylesheet"[^>]*>|<img[^>]*>|style="[^"]*")|<script[^>]*>.*?</script>|<style[^>]*>.*?</style>|<!--.*?-->/i'''$text);
   }
   
   
/*
   * strip whitespace from the text
   * @param string $text
   * @return string
   * @access public
   */
   
public function stripWhitespace($text
   {
           
$r preg_replace('/[nrt]+/'''$text);           
        return 
preg_replace('/s{2,}/'' '$r);
   }
   
   
/*
   * remove all the html open and close tags
   * @param string $text
   * @return string
   * @access public
   */
   
public function noHtml($text
   {
           return 
strip_tags($text);
   }
   
   
/*
   * make string safe for display as HTML
   * @param $text
   * @return string
   * @access public
   */
   
public function html($text
   {
           
$patterns = array("/&/""/%/""/</""/>/"'/"/'"/'/""/(/""/)/""/+/""/-/");
        
$replacements = array("&amp;""&#37;""&lt;""&gt;""&quot;""&#39;""&#40;""&#41;""&#43;""&#45;");
        
$string preg_replace($patterns$replacements$text);
           return 
$string;
   }
   
}
Онлайн: 2
Реклама