Maison > développement back-end > tutoriel php > Comment convertir des chaînes en slugs avec des délimiteurs à trait d'union unique en PHP ?

Comment convertir des chaînes en slugs avec des délimiteurs à trait d'union unique en PHP ?

Mary-Kate Olsen
Libérer: 2024-10-29 12:52:29
original
568 Les gens l'ont consulté

How to Convert Strings to Slugs with Single-Hyphen Delimiters in PHP?

Conversion de chaînes en slugs avec des délimiteurs à trait d'union unique : une solution PHP

Lorsqu'il s'agit de créer des URL, il est souvent nécessaire de convertir des chaînes en slugs : des représentations claires et concises qui excluent les caractères spéciaux et les espaces. Cela peut être un défi, surtout si vous souhaitez maintenir la lisibilité et la cohérence. Cet article présente une solution en PHP qui vous aidera à convertir des chaînes en slugs avec des délimiteurs à un seul trait d'union uniquement.

L'approche est simple :

  1. Supprimer les caractères non alphanumériques et Espaces : Cela implique l'utilisation d'expressions régulières pour éliminer tous les caractères qui n'appartiennent pas à un slug, tels que la ponctuation, les symboles et les espaces.
  2. Convertir les espaces en tirets : Une fois les caractères non alphanumériques supprimés, les espaces restants sont remplacés par des tirets pour créer un slug propre et lisible.

Plongeons maintenant dans le code :

<code class="php">function slug($z){
    $z = strtolower($z);
    $z = preg_replace('/[^a-z0-9 -]+/', '', $z);
    $z = str_replace(' ', '-', $z);
    return trim($z, '-');
}</code>
Copier après la connexion

Voyons décomposez chaque étape :

  • Conversion minuscule ($z = strtolower($z)) : Cela garantit que le slug n'est pas sensible à la casse, ce qui le rend cohérent entre les différentes URL.
  • Suppression d'expression régulière(/1 /, ''): Cette expression régulière supprime tous les caractères qui ne sont pas des alphabets minuscules, des chiffres, des espaces , ou des tirets. Il capture les caractères non alphanumériques et les remplace par une chaîne vide.
  • Conversion espace en trait d'union (str_replace(' ', '-', $z)) : Après la suppression caractères non alphanumériques, les espaces restants sont remplacés par des tirets. Cela crée un slug facile à lire et représente la chaîne d'origine avec précision.
  • Coupage des tirets superflus (trim($z, '-')) : Cette étape garantit qu'il n'y a pas les traits d'union de début ou de fin dans le slug.

Par exemple, si vous souhaitez convertir « Voici l'URL ! » dans un slug, le code affichera "this-is-the-url". Ce slug est propre, concis et respecte l'exigence de délimiteur à trait d'union unique.

Grâce à cette fonction, vous pouvez nettoyer efficacement les chaînes et les convertir en slugs adaptés aux URL. Cette technique permet d'améliorer la cohérence et la lisibilité de vos adresses Web, les rendant plus conviviales et optimisées pour le référencement.


  1. a-z0-9 -

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal