Se for a última versão do CI, dá também para usar as próprias funções do 
framework:

http://codeigniter.com/user_guide/helpers/text_helper.html

convert_accented_characters().

Eu fiz um MY_Url_helper e chamo automaticamente esta função.

Por vezes tenho que converter o nome do menu para ficar na url. Se o nome for 
'acentuação', fica complicado.
O url_title faz isso. Quando estendi, apenas chamo dentro do url_title a função 
convert_accented_characters().

[]'s

Em 06/11/2011, às 14:01, PiXwell Web Design escreveu:

> Oi Bruno, pessoal ... 
> 
> Eu continuei pesquisando ontem e achei justamente essa função, que você e os 
> outros sugeriram, mas vi uma "variação" dela, o mb_convert_case(), então 
> usei: 
> 
> mb_convert_case($this->input->post('nome-do-campo'), MB_CASE_TITLE, 'UTF8');
> 
> e funcionou jóinha!
> 
> 
> O mb_convert_case() tem 3 modes: 
> 
> MB_CASE_UPPER
> MB_CASE_LOWER 
> MB_CASE_TITLE 
> 
> 
> Muito obrigada a todos!
> 
> -----Mensagem original-----
> De: [email protected] 
> [mailto:[email protected]] Em nome de Bruno Barros
> Enviada em: domingo, 6 de novembro de 2011 08:46
> Para: CodeIgniter Brasil
> Assunto: Re: [CodeIgniter] Conversão de texto - uppercase, lowercase e 
> capitalize
> 
> Tente usar mb_strtolower.
> 
> Abraços,
> Bruno Barros
> 
> 
> 
> Em 6 de novembro de 2011 00:33, Erick Patrick
> <[email protected]>escreveu:
> 
>> @Marcia,
>> 
>> Já tentou utilizar a função ascii_to_entities(), do *Text Helper*? Ela deu
>> jeito nos problemas que tive com acentuação, que tive.
>> 
>> Att.,
>> 
>> —————————————————————————
>> -  erickpatrick.com - nomnmo.com - rpgdomestre.com  -
>> 
>> 
>> 
>> 2011/11/5 PiXwell Web Design <[email protected]>
>> 
>>> Boa tarde Grupo,
>>> 
>>> 
>>> 
>>> Estou passando por um “probleminha” com o CI .... acentuação na conversão
>>> do
>>> texto ...
>>> 
>>> 
>>> 
>>> Minha situação:
>>> 
>>> 
>>> 
>>> Preciso receber um valor de um formulário e gravá-lo no BD, mas tenho que
>>> “capitalizá-lo” primeiro (1ª letra maiúscula):
>>> 
>>> 
>>> 
>>> ucfirst(strtolower($this->input->post('nomeCombs')));
>>> 
>>> 
>>> 
>>> A função strtolower() não reconhece acentuação e substitui letras
>>> acentuadas
>>> por “?” (interrogação) ... fiz uma pesquisa e achei algumas funções para
>>> conversão de textos, e baseados nelas fiz uma biblioteca para isso,
>> testei
>>> fora do CI e funciona perfeitamente, mas qdo carrego no controller e uso
>>> para conversão, ela não funciona em letras acentuadas ... se tá
>> maiúscula,
>>> continua maiúscula, se ta minúscula, continua minúscula.
>>> 
>>> 
>>> 
>>> Será que fiz certo? Sou iniciante, fiz essa biblioteca seguindo o tuto do
>>> Guia de usuário do  Codeigniter:
>>> http://www.codeigniter.com.br/manual/general/creating_libraries.html
>>> 
>>> 
>>> 
>>> 
>>> 
>>> Código no controller:
>>> 
>>> 
>>> 
>>> 
>>> 
>>> public function incluir()
>>> 
>>> {
>>> 
>>>           $this->load->library('string_converter');
>>> 
>>>           $campo['combustivel_nome'] =
>>> $this->string_converter->capitalize($this->input->post('nomeCombs'));
>>> 
>>>           $this->combustivel_model->insert($campo);
>>> 
>>>           redirect('admin/combustivel', 'refresh');
>>> 
>>>     }
>>> 
>>> 
>>> 
>>> Minha biblioteca (se for útil a alguém, pooooode copiar =]  ):
>>> 
>>> 
>>> 
>>> <?php if ( ! defined('BASEPATH')) exit('Acesso proibido!');
>>> 
>>> 
>>> 
>>> class String_converter
>>> 
>>> {
>>> 
>>> 
>>> 
>>>     public function lower($palavra)
>>> 
>>>     {
>>> 
>>>           return $palavra =
>>> 
>>> 
>> strtr(strtolower($palavra),"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÜÚÞß","àáâãäåæçèéêëìíî
>>> ïðñòóôõö÷øùüúþÿ");
>>> 
>>>     }
>>> 
>>> 
>>> 
>>>     public function upper($palavra)
>>> 
>>>     {
>>> 
>>>           return $palavra =
>>> 
>>> 
>> strtr(strtoupper($palavra),"àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ","ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎ
>>> ÏÐÑÒÓÔÕÖרÙÜÚÞß");
>>> 
>>>     }
>>> 
>>> 
>>> 
>>>     public function capitalize($palavra)
>>> 
>>>     {
>>> 
>>>           $str = $this->lower($palavra);
>>> 
>>>           return $this->upper(substr($str, 0, 1)) . substr($str, 1,
>>> strlen($str));
>>> 
>>>     }
>>> 
>>> }
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> Marcia Silva
>>> web designer
>>> 
>>> 
>>> 
>>> <http://www.pixwell.com.br/> www.pixwell.com.br
>>> Twitter:  <http://www.twitter.com/pixwell> @pixwell
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> [email protected]
>>> http://www.codeigniter.com.br
>>> http://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>> 
>>> ---------------------------
>>> Oportunidade de negócio
>>> http://www.franquiasargohost.net
>>> ---------------------------
>>> 
>> _______________________________________________
>> [email protected]
>> http://www.codeigniter.com.br
>> http://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>> 
>> ---------------------------
>> Oportunidade de negócio
>> http://www.franquiasargohost.net
>> ---------------------------
>> 
> _______________________________________________
> [email protected]
> http://www.codeigniter.com.br
> http://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> 
> ---------------------------
> Oportunidade de negócio
> http://www.franquiasargohost.net
> ---------------------------
> 
> -----
> Nenhum vírus encontrado nessa mensagem.
> Verificado por AVG - www.avgbrasil.com.br
> Versão: 2012.0.1869 / Banco de dados de vírus: 2092/4598 - Data de 
> Lançamento: 11/05/11
> 
> 
> _______________________________________________
> [email protected]
> http://www.codeigniter.com.br
> http://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
> 
> ---------------------------
> Oportunidade de negócio
> http://www.franquiasargohost.net
> ---------------------------


_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://mail.codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------

Responder a