le MEMO du WEB développeur
••• PHP •••  Liste des Mémos, astuces et bonnes pratiques

Formater une chaine en URL

Fonction qui permet de faire de générer des chaînes conformes aux URLs en formatant par exemple le titre d'une page sous format URL, soit sous forme de caractères alphanumériques et tirets uniquement.

On utilise d'abord la fonction de suppression des accents dans une chaine

<?php
function SupprimeLesAccents($mot){
    return strtr( $mot, "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ", 
                        "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn" );
}

Puis on remplace les caractères autres que alpha numériques par des tirets, à la fin on supprime les tirets supplémentaires.

La chaine de retour de la fonction est au format URL

Fonction de formatage d'URLs

<?php
function ReecrireUrl($titre)
{
   //Désaccentue la chaîne passée en paramètre
   $titre= SupprimeLesAccents (strtolower($titre));
   //Remplace tous les caractères autres que alphanumérique par des tirets
   $titre= preg_replace('#[^a-z0-9_-]#','-',$titre); 
   while (strpos($titre,'--') !== false){
     $titre= str_replace('--','-',$titre); //Nettoyage des tirets superflus
   }
   return $titre;
}
?>

 

publié le 18/12/2011 par Memo Web
ChaînesURL
Commenter le Mémo :

Fonction PHP qui permet de savoir si un répertoire est vide ou pas
Foncer ou eclaircir une couleur en PHP
Garder une variable de session après fermeture du navigateur
Vérifier la validité du format d'un email en PHP - Expression régulière
La superglobale $_SERVER et ses utilisations
Fonction explode en utilisant plusieurs séparateurs
Lire un fichier .csv et l'enregistrer en base de données Mysql
Opérations sur les dates: trouver la date précédente ou suivante d'une date donnée
Bonnes pratiques : Utilisez des simples quotes dans les chaînes PHP
Problème : header("Location ... ne marche pas
Ajoutez vos propres Mémos sur MEMO-WEB

Il suffit de vous créer un compte sur le site

Vous pourrez choisir un thème parmis l'une des catégories proposées par MEMO-WEB.

Rédigez votre Mémo.
Après validation par MEMO-WEB, il sera mis en ligne.
Ajouter vos Mémos