Dicton du 23 Juillet:
Nuages de la Sainte-Brigitte, par le soleil sont chassés vite.

Télécharger
Noter:

Convertir une chaine PHP pour l'url rewriting

Description

Cette fonction retourne n'importe quel chaine de caractère sans accent et sans caractère autre que des chiffre,lettres et -, elle vous permet de convertir une chaine en titre de sujet pour L'URL de votre site blog ou forum.

Sont utilisation est simple, voici un exemple:

Code source (PHP)

$MaChaine="À bientôt!";
$MaChaine=titre_url_rewrite($MaChaine);
echo $MaChaine;// a-bientot


Fonction titre_url_rewrite();


Code source (PHP)

function remplacerAccent($chaine) {//Fonctionne avec l'encodage ISO
$tofind = "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ";
$replac = "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn";
return(strtr($chaine,$tofind,$replac));
}
/* Si vous uitilisez l'encode UTF-8 pour votre site, utilisez la fonction de remplacement ci-dessous:
function remplacerAccent($chaine) {
$tofind = utf8_decode("ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ");
$replac = utf8_decode("AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn");
return(strtr(utf8_decode($chaine),$tofind,$replac));
}*/
function titre_url_rewrite($titre) {
$c = remplacerAccent($titre);//on commence par enlever les accents
$retour = "";//notre retour est pour le moment vide car on vérifier tous les caractères un par un
for($i=0;$i<=strlen($c)-1;$i++) {//on vérifie les caractères de la chaine
$caractere = strtolower(substr($c,$i,1));//on met le caractère en minuscule
$retour .= preg_match("#^[a-z0-9]+$#",$caractere) ? $caractere : "-";//si c'est un chiffre ou une lettre, on ajoute le caractère au retour, sinon on le converti en -
}
for($i=0;$i<=strlen($c)-1;$i++) {
$retour = str_replace("--","-",$retour); // on enlève les tiret successifs
}
$d = substr($retour,-1) == "-" ? substr($retour,0,-1) : $retour; // si le dernier caractère est un tiret, on le retire
$e = substr($d,0,1) == "-" ? substr($d,1) : $d; // si le premier caractère est un tiret, on le retire
return $e;//en fin, on retourne la chaine converti, prêt à être utiliser pour l'url rewriting !
}

Commentaires

Pas encore de commentaire ajouté, soyez le premier!

Ajouter un commentaire

Pseudo/Nom *
Email *
Message *
La balise [code]Votre code...[/code] peut être utilisée

Captcha * 1 + un =

Les champs marqués d'un * sont obligatoires.

Retour à la liste des scripts

Flag Counter