creando nombres de usuario amigables con URL con PHP: una guía completa
en el contexto del desarrollo web, es crucial crear URL con criterios de usuario que sean legibles y optimizados por los motor de búsqueda. El mismo principio se aplica a los nombres de usuario, que a menudo forman una parte integral de los perfiles de usuario y otro contenido dinámico.
cuando se trata de nombres de usuario en sitios web basados en PHP, uno puede encontrar el desafío de garantizar que estos nombres de usuario sean adecuados para su uso en URL. Idealmente deberían ser concisos, únicos y libres de espacios o caracteres especiales.
para abordar esto, se puede aprovechar varias técnicas en PHP para transformar un nombre de usuario en un formato amigable con la URL. Un enfoque popular implica reemplazar espacios con subrayos. Además, los caracteres especiales se pueden eliminar o convertirse en sus equivalentes ASCII.
Php Función para slugificar usernames
la siguiente función php, conocida como "slugify," se puede emplear para convertir un nombre de usuario en un slug) { // Convertir a entidades HTML $ string = htmlentities ($ string, ent_quotes, 'utf-8'); // Eliminar personajes acentuados $ string = preg_replace ('~ & ([a-z] {1,2}) (?: agudo | cedil | circt | grave | lig | orn | ring | slash | th | tilde | uml); ~ i', '$ 1', $ string); // Vuelva a Porvas de las entidades HTML $ string = html_entity_decode ($ string, ent_quotes, 'utf-8'); // reemplazar caracteres no alfanuméricos con guiones $ string = preg_replace ('~ [^0-9a-z] ~ i', '-', $ string); // Recorte los guiones, convertir a minúsculas $ String = Trim ($ String, '-'); $ string = strtolower ($ string); devolver $ cadena; }
function slug($string) { // Convert to HTML entities $string = htmlentities($string, ENT_QUOTES, 'UTF-8'); // Remove accented characters $string = preg_replace('~&([a-z]{1,2})(?:acute|cedil|circ|grave|lig|orn|ring|slash|th|tilde|uml);~i', '$1', $string); // Reconvert from HTML entities $string = html_entity_decode($string, ENT_QUOTES, 'UTF-8'); // Replace non-alphanumeric characters with dashes $string = preg_replace('~[^0-9a-z] ~i', '-', $string); // Trim dashes, convert to lowercase $string = trim($string, '-'); $string = strtolower($string); return $string; }Ejemplo de uso
Para ilustrar la funcionalidad de esta función, considere los siguientes ejemplos:
$ user = 'alix axel'; Echo Slug ($ user); // alix-exel $ user = 'álix ãxel'; Echo Slug ($ user); // alix-exel $ user = 'álix ---- _ ãxel!?!?'; Echo Slug ($ user); // alix-axel
$user = 'Alix Axel'; echo slug($user); // alix-axel $user = 'Álix Ãxel'; echo slug($user); // alix-axel $user = 'Álix----_Ãxel!?!?'; echo slug($user); // alix-axel
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3