[PHP]Chaines des caractères avec pts virgules

Fermé
dev84 - 28 janv. 2008 à 15:19
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 28 janv. 2008 à 16:22
Bonjourà tous et à toutes,
je rencontre un problème depuis peu avec une chaine de caractère ressemblant à cela :

56;85;98;10

Ce champs issu d'une base de données mysql contient des identifiants de services séparés par ddes points virgules. Cependant, j'ignore comment récupérer chacun des services...

j'ai une petite idée avec un like mais je ne suis sur de rien...

j'espère que vous pourrez me répondre...

Bonne continuation à tous.
A voir également:

3 réponses

Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
28 janv. 2008 à 15:44
Bonjour,

Le mieux est de récupérer le champ tel quel de la base de données (donc pas de LIKE ni rien), puis d'utiliser la fonction php explode().
Celle-ci permet de transformer une chaine de caractère en tableau d'après une délimitation précise.
En l'occurrence, si ta chaine est stockée dans la variable $services, il te suffit de faire :
$tableauServices = explode(";", $services);

Ensuite, $tableauServices[0] contient le premier, [1] contient le 2e, etc.
Et tu peux faire une boucle dessus :
foreach ($tableauServices as $unService)
{
// Tout ce que tu veux
}

Xavier
0
euh... Si j'ai bien compris tu veux récupéré les valeurs se trouvant entre les ;, si tel est ton desir, il existe déjà une fonction permettant de l'exaucer, va sur php.net et cherche la fonction split

Ce que tu veux faire se nomme bel et bien un split d'une chaine de caractère
0
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
28 janv. 2008 à 15:54
Pourquoi faire dans l'expression rationnelle quand le délimiteur n'est qu'un simple caractère ?
0
bowbow13 > Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021
28 janv. 2008 à 15:59
Pour faire les choses bien sans se compliquer la vie lol.
Cette fonction te départage automatiquement les caractère et si je me souviens te les mets dans un tableau après tout est nickel.
Un code propre et facilement modifiable auquelle chaque fonction correspond a ce que pourquoi elle a été créé.

C'est quand même plus facile un code propre avec un bon commentaire pour s'y retrouver ;)
0
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011 > bowbow13
28 janv. 2008 à 16:22
Un code vraiment propre n'a pas besoin de commentaire ;)

Sinon, la fonction explode est elle aussi faite pour ça, non ? Elle me parait même justement plus adaptée...
0
Merci à tous pour vos réponses qui ont été plus que rapides et cohérentes : j'ai réussi grâce à vous à obtenir ce dont j'avais besoin

Encore merci

Bonne continuation à vous tous

A bientôt
0