Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Essa função literalmente e muito útil para quem quer fazer urls amigáveis sem muita dificuldade ela concerte o texto não só para o minusculo como também retira todo caractere invalido e acentuações perfeitamente sem margem de erro. Suas aplicações são infinitas você pode usar essa da forma que você desejar use a sua imaginação.
- A Função
- ----------------------------------------------------------------------------------------------------------------------------------
- <?php
- function removeAcentos($string, $slug = false) {
- $string = strtolower($string);
- // Código ASCII das vogais
- $ascii['a'] = range(224, 230);
- $ascii['e'] = range(232, 235);
- $ascii['i'] = range(236, 239);
- $ascii['o'] = array_merge(range(242, 246), array(240, 248));
- $ascii['u'] = range(249, 252);
- // Código ASCII dos outros caracteres
- $ascii['b'] = array(223);
- $ascii['c'] = array(231);
- $ascii['d'] = array(208);
- $ascii['n'] = array(241);
- $ascii['y'] = array(253, 255);
- foreach ($ascii as $key=>$item) {
- $acentos = '';
- foreach ($item AS $codigo) $acentos .= chr($codigo);
- $troca[$key] = '/['.$acentos.']/i';
- }
- $string = preg_replace(array_values($troca), array_keys($troca), $string);
- // Slug?
- if ($slug) {
- // Troca tudo que não for letra ou número por um caractere ($slug)
- $string = preg_replace('/[^a-z0-9]/i', $slug, $string);
- // Tira os caracteres ($slug) repetidos
- $string = preg_replace('/' . $slug . '{2,}/i', $slug, $string);
- $string = trim($string, $slug);
- }
- return $string;
- }?>
- -----------------------------------------------------------------------------------------------------------------------------------
- Usando a função método 1
- <?php
- // Apenas remove os acentos
- echo removeAcentos(' [Resolvido] » Problemas na conversão de página html');
- // [resolvido] » problemas na conversao de pagina html ?>
- -----------------------------------------------------------------------------------------------------------------------------------
- Usando a função método 2
- <?php
- // Cria um slug da string
- echo removeAcentos(' [Resolvido] » Problemas na conversão de página html', '-');
- // resolvido-problemas-na-conversao-de-pagina-html ?>
- -----------------------------------------------------------------------------------------------------------------------------------
- Usando a função método 3
- Você pode usar esta função em valores de variáveis em texto como por exemplo.
- <?php $texto ='Não quero acentuação nesse texto';
- echo removeAcentos($texto, '-');
- // nao-quero-acentuacao-nesse-texto ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement