
<?php
 
/**
 * Cut text to specific length.
 *
 * @author JoseRobinson.com
 * @version 201306301956
 * @link GitHup: https://gist.github.com/5897554
 * @param string $str The text to cut.
 * @param int $limit The maximum number of characters that must be returned.
 * @param stirng $brChar The character to use for breaking the string.
 * @param string $pad The string to use at the end of the cutted string.
 * @return string
 */
function cutText($str, $limit, $brChar = ' ', $pad = '...') 
{
    if (empty($str) || strlen($str) <= $limit) {
        return $str;
    }
    $output = substr($str, 0, ($limit+1));
    $brCharPos = strrpos($output, $brChar);
    $output = substr($output, 0, $brCharPos);
    $output = preg_replace('#\W+$#', '', $output);
    $output .= $pad;
    return $output;
}