Ao decorrer de um projeto precisei transformar strings em maiúsculas ou minúsculas conforme ocasião e para isso o PHP fornece as funções abaixo:

strtolower - Converte uma string para minúsculas
strtoupper - Converte uma string para maiúsculas
ucfirst - Converte para maiúscula o primeiro caractere de uma string
ucwords -Converte para maiúsculas o primeiro caractere de cada palavra

Porém nossa língua portuguesa existem as preciosidades dos acentos, na qual o PHP não consegue converter nativamente. Então resolvi fazer uma função para elas, veja:

  1. // Função para transformar strings em Maiúscula ou Minúscula com acentos
  2. // $palavra = a string propriamente dita
  3. // $tp = tipo da conversão: 1 para maiúsculas e 0 para minúsculas
  4. function convertem($term, $tp) {
  5.     if ($tp == "1") $palavra = strtr(strtoupper($term),"àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ","ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÜÚÞß");
  6.     elseif ($tp == "0") $palavra = strtr(strtolower($term),"ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÜÚÞß","àáâãäåæçèéêëìíîïðñòóôõö÷øùüúþÿ");
  7.     return $palavra;
  8. }
  9.  
  10. // Exemplo de Utilização - Maiúscula
  11. $exemplo1 = "notícias";
  12. echo convertem($exemplo1, 1);
  13.  
  14. // Exemplo de Utilização - Minúscula
  15. $exemplo2 = "NOTÍCIAS";
  16. echo convertem($exemplo2, 0);

Bom, agora com esta função já da pra converter/transformar qualquer string que tenha caracteres acentuados em maiúscula ou minúscula. E não se esqueça, o seu comentário é o meu pagamento para continuar publicando minhas dicas e côdigos. ;)