Pasar una cadena a minúsculas en PHP con acentos, tildes, eñes
Función ucfirst de PHP modificada para que pase a minúsculas también las eñes, tildes y cedillas.
/* Pasa una cadena a minúsculas teniendo en cuenta tildes, eñes y cedillas.
* Deja la primera letra de cada palabra en mayúsculas, sea una eñe, tilde o cedilla.
* Elimina los espacios del principio y final.
* $c: la cadena a transformar
*
* By E.S.R.
*/
function ucfirst_especial($c)
{
$cad=trim($c); // eliminamos los espacios del principio y final
$trozos=explode(' ', $cad); // separamos la cadena por los espacios
$cadena='';
$n=count($trozos); // número de palabras
for($i=0;$i<$n;$i++)
{
// pasamos a mayúsculas la primera letra
$aux1=strtoupper(substr($trozos[$i], 0, 1));
$aux1=strtr($aux1, "áéíóúäëïöüàèìòùâêîôûñçãõ", "ÁÉÍÓÚÄËÏÖÜÀÈÌÒÙÂÊÎÔÛÑÇÃÕ");
if(strlen($trozos[$i])>1)
{ // pasamos a minúsculas todo menos la primera letra si tiene más de una letra
$aux2=strtolower(substr($trozos[$i], 1));
$aux2=strtr($aux2, "ÁÉÍÓÚÄËÏÖÜÀÈÌÒÙÂÊÎÔÛÑÇÃÕ", "áéíóúäëïöüàèìòùâêîôûñçãõ");
}
$cadena.=$aux1.$aux2.' ';
}
$cadena=trim($cadena); // eliminamos el espacio final
return($cadena);
}
Etiquetas: funciones php, php
0 Comentarios:
Publicar un comentario en la entrada
Enlaces a esta entrada:
Crear un enlace
<< Home