Cherche script PHP pour préparer l'URL rewriting

  • Auteur de la discussion Auteur de la discussion El Riiico
  • Date de début Date de début
Nouveau WRInaute
Bonjour, j'ai juste besoin d'un script qui traite une chaine et qui me :
  • Supprime les accents
  • Transforme les espaces et les apostrophes en tirets
  • Gére les autres choses auxquels je n'ai pas pensé et qui risquent de provoquer une mauvaise surprise...
C'est pour formater des titres d'articles pour faire de l'URL rewriting classique : http://www.monsite.com/articles/8814-le ... ransformer

Je sais, je pourrais l'écrire moi-même, mais des centaines de développeurs au moins aussi doués que moi ont déjà dû l'écrire avant :P
 
WRInaute discret
4 lignes très simples que j'utilise souvent


function desaccent($chaine) {
$a = "àáâãäåòóôõöøèéêëçìíîïùúûüÿñ .'";
$n = "aaaaaaooooooeeeeciiiiuuuuyn---";
return (strtr(strtolower($chaine), $a, $n));
}

A partir de là, tu peux rajouter ce que tu veux.
 
Nouveau WRInaute
Je m'attendais à un script compliqué avec des expressions rationnelles. Mais bon, si ça marche, après tout pourquoi faire compliqué...

Merci bien, Mojo.
 
Nouveau WRInaute
Très joulie fonction magic corp.

Le ereg_replace pour les caractère non alpha numériques, la gestion de l'apparition de doubles tirets... c'est juste ce que je cherchais.

Je te met 20.
 
WRInaute discret
Bonjour à tous,

Je reviens sur ce Topic, qui m'a donner une bonne partie de mes questions.

Seulement, j'ai des questions :
- Dans mes URLs actuelle j'ai des " / ", ex. :
http://www.monsite.com/detail.php?c=rouge&t=vitré&b=droite / gauche
Bon je n'ai pas testé encore, mais si je remplace le " / " (pour "b=droite / gauche"), il ne va pas m'enlever le " / " après mon " .com" du nom du site ? nous sommes d'accord !

- En terme de performance, mes pages comportent +/- 80 liens à réécrire, ceci prend peu/beaucoup/trop de charge serveur ? tout en sachant que c'est pour un appel de page et que si j'ai 1 000 personnes et bien ça sera exponentiel !
Comment on calcule ceci ? enfin si y a vraiment un impact !

Merci pour votre retour :)
 
WRInaute discret
re

Une dernière question, purement esthétique car je pense qu'il y ai d'impact pour les moteurs :
J'ai des infos qui ont des " / ", ex. : Type de carburant : essence-95 / essence98
Mieux vaut mettre une virgule dans l'URL rewritée ou bien un tiret ?

ex : ../voiture-rouge-essence-95,essence98-neuve.html
ou
ex : ../voiture-rouge-essence-95-essence98-neuve.html

Merci
 
WRInaute occasionnel
Bonsoir,
OlivierShop a dit:
Bon je n'ai pas testé encore, mais si je remplace le " / " (pour "b=droite / gauche"), il ne va pas m'enlever le " / " après mon " .com" du nom du site ? nous sommes d'accord !
Si tu passe toute ton URL à la moulinette, oui ton "/" après ton .com sera converti.
2 option possible:
- Dans ta fonction de conversion tu fait une séparation de ta chaine avant la moulinette et tu traite seulement la partie qui doit être traité et tu concatène au moment du "return"
- Sinon tu ne passe à la fonction que la partie à convertir (ex : $url = 'http://www.monsite.com/' . laMoulinette('rouge-vitré-droite / gauche') . '.html';)
A voir ce qui est le plus simple à mettre en place.

PS : Ne pas oublié qu'il faut pouvoir faire la conversion inverse pour traité les données.

OlivierShop a dit:
- En terme de performance, mes pages comportent +/- 80 liens à réécrire, ceci prend peu/beaucoup/trop de charge serveur ? tout en sachant que c'est pour un appel de page et que si j'ai 1 000 personnes et bien ça sera exponentiel !

Concernant les "," ou les "-" je ne saurai dire ???
Comment on calcule ceci ? enfin si y a vraiment un impact !
A tester ... au lancement du script tu stock l'heure de lancement, puis une une boucle de 80 conversions, à la fin tu compare l'heure de lancement avec l'heure du moment. Comme ça je dirais que c'est négligeable mais tout dépend de la complexité de la conversion ...
 
WRInaute discret
Merci Magic pour tes réponses.

Je vais tester le coup du temps pour la conversion, je pense aussi que ça sera négligeable, je reviendrais donner les infos.
Pour le coupe des tirets ou virgules, je vais mettre tout en tiret, étant donné que les moteurs n'y trouvent pas un intéret particulier autant tout uniformiser; y a que l'internaute qui lui peut voir un différence, mais est-elle utile ou pratique... i don't know...

Je dois mettre en place mon serveur/site la semaine prochaine, enfin si tout va bien ^^

See U
 
Discussions similaires
Haut