3v4l.org

run code in 300+ PHP versions simultaneously
<?php function getSlug($cadena, $separador='-') { // Eliminamos el separador si ya existe en la cadana actual $cadena = str_replace($separador, "",$cadena); // Convertimos la cadena a minúsculas $cadena = strtolower($cadena); // Remplazamos tildes y eñes (strtolower no convierte en minúsculas // estos valores así que cambiamos sus respectivas mayúsculas en // minúsculas sin tilde) $cadena = strtr($cadena, "áéíóúÁÉÍÓÚñÑ", "aeiouaeiounn"); // Eliminamos cuarquier carácter no alfamnumérico $cadena = trim(preg_replace("/[^ a-z0-9]/", "", $cadena)); // Insertamos el separador $cadena = preg_replace("/[\t\n\r]+/", $separador, $cadena); return $cadena; } echo getSlug('hola CaÑÑÑoáAÓd');

preferences:
35.54 ms | 402 KiB | 5 Q