Inverser une chaine mais pas tous les mots a l'envers.

Petit nouveau ! | 7 Messages

23 avr. 2014, 12:39

Bonjour @tous!

Voila je fais une mise a jour d'une table ou des adresses ont été rentré comme ceci :

MARECHAL FOSH - RUE DE

ET je souhaiterais le replacé comme suit :

RUE DE MARECHAL FOSH

Voilou..

MERCI pour votre help!

ViPHP
xTG
ViPHP | 7331 Messages

23 avr. 2014, 13:09

Tu utilises explode() sur le tiret, tu obtiens un array avec deux index (tes deux chaînes).
Plus qu'à les inverser et le tour est joué. ;)

ViPHP
ViPHP | 1996 Messages

23 avr. 2014, 13:13

As tu toujours le "-" ?

Si oui, essayes vers explode()
<?php 
$string = "MARECHAL FOSH - RUE DE";
$tab = explode ("-",$string);
$newString = trim($tab[1])." ".trim($tab[0]);
echo $newString;
?>
Explode() te créer un tableau, trim() efface les éventuels espaces qui résident.

NOte : xTg trop rapide
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Petit nouveau ! | 7 Messages

23 avr. 2014, 14:50

je l'ai toujours mais ca depend EFFECTIVEMENT, y en a qu'y sont bien rentrés d'autres non.

EFFECTIVEMENT ça fonctionne, mais ca donne quoi si une adresse est deja bien rentré (ca va changé ou non?)

merci de votre rapidité, et de votre aide :)

ViPHP
xTG
ViPHP | 7331 Messages

23 avr. 2014, 15:48

Si les adresses sont correctement rentrées cela va te les mettre dans le mauvais ordre évidemment.
Si tu ne sais pas différencier une mauvaise adresse d'une bonne tu ne pourras rien automatiser. ;)

Mammouth du PHP | 2278 Messages

23 avr. 2014, 18:10

Il faudrait peut-être énumérer tous les trucs possibles du genre:
rue
avenue
place
square
venelle
qui devraient se trouver en début
et chercher si l'un d'entre eux se trouve au début: dans ce cas, on ne fait rien
S'il ne se trouve pas au début mais en N, nettoyer l'adresse pour enlever le tiret, et déplacer ce qui se trouve à partir de N.
Vanitas vanitatum et omnia vanitas
Mes derniers livres :
Sauvez les Mots chez BoD,
Tous les chemins mènent à ROM chez BoD

Petit nouveau ! | 7 Messages

24 avr. 2014, 08:06

ok oue donc galere on peu pas faire

if($chaine contient un -) on met dans l'ordre...?

ViPHP
xTG
ViPHP | 7331 Messages

24 avr. 2014, 08:21

Et le "on met dans l'ordre" tu le définis comment ? 8-|
L'algorithmie c'est pas magique.
Ce que propose sirakawa est une bonne piste pour identifier si c'est dans l'ordre ou non.