Skip to content

Instantly share code, notes, and snippets.

@MuriloMazzeu
Last active October 8, 2017 05:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MuriloMazzeu/a65f741af80a0827b8b4e8f0cf3af651 to your computer and use it in GitHub Desktop.
Save MuriloMazzeu/a65f741af80a0827b8b4e8f0cf3af651 to your computer and use it in GitHub Desktop.
PHP's Snippets
public function is_ascii($str) {
return (preg_match('/[^\x00-\x7F]/S', $str) === 0);
}
function codificacao($string) {
return mb_detect_encoding($string.'x', 'UTF-8, ISO-8859-1');
}
function word_limiter($str, $limit = 100, $end_char = '…') {
if (trim($str) === '') return $str;
preg_match('/^\s*+(?:\S++\s*+){1,'.(int) $limit.'}/', $str, $matches);
return (strlen($str) === strlen($matches[0])) ? rtrim($matches[0]).'' : rtrim($matches[0]);
}
function character_limiter($str, $n = 500, $end_char = '…') {
if (mb_strlen($str) < $n) return $str;
$str = preg_replace('/ {2,}/', ' ', str_replace(array("\r", "\n", "\t", "\x0B", "\x0C"), ' ', $str));
if (mb_strlen($str) <= $n) return $str;
$out = '';
foreach (explode(' ', trim($str)) as $val) {
$out .= $val.' ';
if (mb_strlen($out) >= $n) {
$out = trim($out);
return (mb_strlen($out) === mb_strlen($str)) ? $out : $out.$end_char;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment