Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Como crear una url amigable en PHP

Vamos a ver como podemos crear una url amigable o como se conoce en inglés el término slug, para esto simplemente tenemos que hacer uso del siguiente código:

De esta manera lo puedes hacer funcionar de la siguiente manera:
function slug($string) {
    //Primero definimos nuestro array de caracteres especiales que queremos limpiar en nuestra cadena
    $characters = array(
        "Á" => "A", "Ç" => "c", "É" => "e", "Í" => "i", "Ñ" => "n", "Ó" => "o", "Ú" => "u",
        "á" => "a", "ç" => "c", "é" => "e", "í" => "i", "ñ" => "n", "ó" => "o", "ú" => "u",
        "à" => "a", "è" => "e", "ì" => "i", "ò" => "o", "ù" => "u"
     );
 
     $string = strtr($string, $characters); //Realiza la conversión de los caracteres
     $string = strtolower(trim($string)); //Convierte todo a minúsculas
     $string = preg_replace("/[^a-z0-9-]/", "-", $string);
     $string = preg_replace("/-+/", "-", $string); //Reemplaza los espacios por guiones medios -
 
     //Si el último carácter de la cadena es un guión medio -, lo elimina.
     if(substr($string, strlen($string) - 1, strlen($string)) === "-") {
       $string = substr($string, 0, strlen($string) - 1);
     }
 
     return $string;
}
Para hacerlo funcionar simplemente utilizas la función de esta manera:
<!--?php     echo slug("Hola mundo!"); //te imprimirá "hola-mundo ?-->
5
Puntos
1010
Visitas
0
Resp
Por zerodarck hace 114 meses
Experto
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate