Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Léo95

Habilitar acentuação na Hashtag

Recommended Posts

Quando coloca acento não funciona, tipo:

#Função - "ção" sai do link

<?php
function Hashtag($texto){
$texto = preg_replace( "/#([a-z0-9_]+)/i", "<a href=\"extra.lp?action=hashtag&tag=$1\">#$1</a>", $texto);

return $texto;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse preg_replace ai só pega letras, numeros e underline, pra pegar caracteres especiais, vc pode adicioanr elas ao preg_replace ou fazer algo assim:

 

$texto = 'asdasd fdsf sdf werkwemr, #çaâ sd asd #çaâ' . " ";
echo preg_replace( "/#(.*?) /", "<a href=\"extra.lp?action=hashtag&tag=$1\">#$1</a> ", $texto);

Pode fazer assim:

 

$texto = explode(' ', 'asdasd fdsf sdf werkwemr, #çaâ sd asd #çaâ');
echo implode(' ', array_map(function($t) {
    return $t[0] == '#' ? "<a href=\"extra.lp?action=hashtag&tag={$t}\">{$t}</a>" : $t;
}, $texto));

Ou se quiser continuar com algo parecido com o seu, use esse (recomendo, mas não sei se vc vai ter problemas futuros):

$texto = 'asdasd fdsf sdf werkwemr, #çaâ sd asd #CaçadorNaÁrea';
echo preg_replace('/#(\w+)/u', '<a href=\"extra.lp?action=hashtag&tag=$1\">#$1</a>', $texto); 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.