Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Please do not post a message for the purpose of insulting, incitement to hatred, sexual remarks and any other which does not respect our terms of use !
Sign in to follow this  
Lucas Orsini

 résolu Remplacer la ponctuation en PHP

Recommended Posts

Vétéran

Salut à tous & à toutes!

 

Et bien oui il arrive parfois au modérateur d'avoir un petit coup de main de la communauté :troll3:

Ma question, du moins mon problème est plus ou moins facile à première vu mais je ne trouve pas la solution donc chiant pour ma part actuellement.

 

J'ai crée un système de url rewriting du style "http://monsite.fr/article/c'est-mon-article-à-moi-ou pas-?-1"

Sauf que pour accéder au lien il faut retirer les apostrophes, les accents, et les points d'interrogation et plein d'autres qui n'apparaît pas dans mon exemple.

 

J'ai donc procédé de cette manière 

Citation

<?php echo str_replace('?', '', (str_replace('\'', '', (str_replace(' ', '-', $req['title']))))); ?>-<?php echo $req['id']; ?>

 

Mais j'aimerai passer à quelques choses de plus simple et de plus direct, je ne sais pas si c'est possible.

En attente de vos réponses merci à ceux qui m'aideront! (Je trouve ce code lourd et difficile à gérer)

 

Cordialement, Lucas!

Share this post


Link to post
Share on other sites
Donateur

Pourquoi tu ne crée pas une function du genre :

 

function ArticleLink($value) {

$a = str_replace('?', '', (str_replace('\'', '', (str_replace(' ', '-', $value)))));

return $a;

}

 

Ce sera plus rapide à l'utilisation non ?

Share this post


Link to post
Share on other sites
Vétéran
il y a 2 minutes, MathisL a dit :

Pourquoi tu ne crée pas une function du genre :

 

function ArticleLink($value) {

$a = str_replace('?', '', (str_replace('\'', '', (str_replace(' ', '-', $value)))));

return $a;

}

 

Ce sera plus rapide à l'utilisation non ?

 

Effectivement j'y ai pensé, mais je voulais savoir si il exisait pas une fonction un peu plus légère et qui gèrerait tout d'un coup, car la je n'ai donné qu'une infime partie de la ponctuation

Share this post


Link to post
Share on other sites
Donateur
à l’instant, Lucas Orsini a dit :

 

Effectivement j'y ai pensé, mais je voulais savoir si il exisait pas une fonction un peu plus légère et qui gèrerait tout d'un coup, car la je n'ai donné qu'une infime partie de la ponctuation

J'ai ça qui vire la plupart des caractères spéciaux si c'est ce que tu cherches

 

$search = array ('@[éèêëÊË]@i','@[àâäÂÄ]@i','@[îïÎÏ]@i','@[ûùüÛÜ]@i','@[ôöÔÖ]@i','@[ç]@i','@[ ]@i','@[^a-zA-Z0-9_]@');
$replace = array ('e','a','i','u','o','c','_','');
return preg_replace($search, $replace, $in);

 

Share this post


Link to post
Share on other sites
Vétéran
il y a 14 minutes, MathisL a dit :

J'ai ça qui vire la plupart des caractères spéciaux si c'est ce que tu cherches

 

$search = array ('@[éèêëÊË]@i','@[àâäÂÄ]@i','@[îïÎÏ]@i','@[ûùüÛÜ]@i','@[ôöÔÖ]@i','@[ç]@i','@[ ]@i','@[^a-zA-Z0-9_]@');
$replace = array ('e','a','i','u','o','c','_','');
return preg_replace($search, $replace, $in);

 

 

Quand je remplace le _ par un - ça ne met rien genre ça colle les mots.

Share this post


Link to post
Share on other sites
Donateur
Il y a 2 heures, Lucas Orsini a dit :

 

Quand je remplace le _ par un - ça ne met rien genre ça colle les mots.

Faut que tu joue avec ce que je t'ai donné, tu remplaces x par y 

Share this post


Link to post
Share on other sites

 

Il y a 13 heures, Lucas Orsini a dit :

 

Quand je remplace le _ par un - ça ne met rien genre ça colle les mots.

 

@[^a-zA-Z0-9_]@ rajoute-y un -, pour que ca donne @[^a-zA-Z0-9_-]@ et la les tirets resterons!

Share this post


Link to post
Share on other sites
Vétéran

Salut,

 

Ton sujet qui se trouvait dans 

Please login or register to see this link.

>

Please login or register to see this link.

>

Please login or register to see this link.

>

Please login or register to see this link.

a été déplacé dans  

Please login or register to see this link.

>

Please login or register to see this link.

>

Please login or register to see this link.

>

Please login or register to see this link.

 

 

Ceci est un message automatique.

Share this post


Link to post
Share on other sites
Admin
Admin
    Salut Lucas Orsini ,
    Ton sujet a été déplacé pour une des deux raisons suivantes :

    - Ta demande a été résolue.

    - Ton sujet se trouvait dans la mauvaise catégorie.

        
      Ceci est un message automatique.

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...