|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : juin 2008 Messages : 45 ![]() |
bonsoir
je cherche à savoir si un élément au moins , parmi plusieurs , est contenu dans une chaine de caractères .(programation en php) exemple $chaine = "bateau oiseau vélo voiture camion roue andouille de vire 28.2 A914 ......... " et je voudrais savoir si cette chaine contient "vélo" ou "roue" ou "langue de boeuf sauce ravigotte" ou "14" merci |
|
|
00
|
|
|
#2 |
|
Membre chevronné
![]() Inscription : avril 2007 Messages : 764 ![]() |
Regarde une des fonctions du genre de substr_count...
- cette question avait plutôt sa place sur un forum PHP (la preuve, nous y sommes désormais !) - comment tester la présence de sous-chaîne dans une chaîne, ça se trouve avec une petite recherche google ou autre (c'est d'ailleurs ce que j'ai fait) |
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Inscription : juin 2008 Messages : 45 ![]() |
bonjour
Je n'ai pas trouvé dans substr_count la réponse à mon problème. Mais peut etre n'ai je pas compris la réponse dans le manuel php. merci |
|
|
00
|
|
|
#4 | |
|
Membre chevronné
![]() Inscription : avril 2007 Messages : 764 ![]() |
Cette fonction est pourtant clairement expliquée...
Citation:
Test de présence d'une sous-chaîne dans une chaîne : c'est fait. Test de présence d'une sous-chaîne parmi plusieurs dans une chaîne : tu n'as plus qu'à boucler... (si tu voulais une fonction qui fasse tout d'un coup, je doute que ça existe dans les librairies standards) |
|
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Inscription : juin 2008 Messages : 45 ![]() |
bonjour
je cherchais plutôt une fonction qui fasse tout d'un coup car j'ai environ 80 éléments différents à rechercher dans des chaines et j'aurais préféré quelque chose de plus ergonomique qu'une boucle ou qu'une série de recherche . Mais s'il n'y a pas d'autre possibilité .... j'avais bien compris la fonction de substr mais ne pensais pas qu'elle était ma seule issue .. merci |
|
|
00
|
|
|
#6 | ||
![]() ![]() Inscription : janvier 2003 Messages : 2 018 ![]() |
Hey Mau
Utilise les tableaux comme dans l'exemple ci-dessous avec la fonction in_array() : Code :
Tu n'as pas besoin de savoir si tu as toutes les tailles : tu n'affiches que celles qui sont présentes. Note 2 : Tu pouvais également déterminer le type de l'article en lisant le champ "famille_article" et donc en déduire quel type d'affichage de taille tu devras utiliser (cqfd) - c'est plus facile également.
__________________
N1bus Modérateur Web / PHP Aucune demande technique ne sera traitée par MP . Merci PHP/GD : Génération d'un code-barre Code 39 FCKEditor : Modifier la largeur des listes déroulantes PHP/e-Commerce : Installation d'une solution de paiement en ligne SIPS-ATOS |
||
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() Inscription : juin 2008 Messages : 45 ![]() |
je ne peux pas utiliser famille_article car body et mdb peuvent avoir aussi les tailles de lp ... a + |
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : janvier 2003 Messages : 2 018 ![]() |
Exact.
Ben dans tous les cas cela n'a pas d'importance vu que tu afficheras le meme tableau de tailles... que ce soit lp , body ou mdb . Si tu veux pouvoir les différencier absolument, envisage alors de rajouter un champ explicite qui te donnera le type d'affichage des tailles. Il ne servira qu'à ça mais ça va te faciliter le boulot. De meme que tu as le champ type_article qui n'est pas gérable vu qu'il est dynamique, tu peux rajouter le champ "type_taille" en ENUM (avec des check boxes dans le back-office pour tes différents affichages de tailles / tu peux avoir plusieurs types de tailles pour le même article)
__________________
N1bus Modérateur Web / PHP Aucune demande technique ne sera traitée par MP . Merci PHP/GD : Génération d'un code-barre Code 39 FCKEditor : Modifier la largeur des listes déroulantes PHP/e-Commerce : Installation d'une solution de paiement en ligne SIPS-ATOS |
|
|
00
|
|
|
#9 | |
|
Membre chevronné
![]() Inscription : avril 2007 Messages : 764 ![]() |
Alors là, je suis perdue...
(d'où ça sort ces ) Si j'ai bien compris, ce que tu proposes, N1bus, c'est de ranger les mots à chercher dans un tableau (=> {"vélo", "roue", "14"}), de "casser" la chaîne dans laquelle on va les chercher dans un autre tableau ($chaîne devient {"bateau", "oiseau", "vélo", "voiture", "camion", ...}), puis de chercher si l'un des mots du premier tableau se trouve dans le second... Ce qui ne répond en fait pas au problème posé : comment vas-tu tester si la chaîne entière "langue de boeuf sauce ravigotte" est présente dans $chaine ? (après, ça suffira peut-être à mauyebo, mais dans ce cas c'est qu'il a demandé à faire plus de chose que ce dont il avait besoin Citation:
Quand tu parles d'ergonomie, tu parles peut-être de la "gueule" de ton code ? Eh bien tu écris les fonctions dont tu as besoin avec les arguments qui te conviennent le mieux, et ensuite tu les appelle à loisir ! Pour revenir à la demande initiale, c'est-à-dire "savoir si un élément au moins , parmi plusieurs , est contenu dans une chaine de caractères" : en dix lignes tu peux écrire une fonction "atLeastOneSubstr($tableau_elements, $chaine_a_tester)" qui teste si au moins un des éléments contenu dans le premier argument (un tableau de chaînes de caractère) est contenu dans le deuxième argument (une chaîne de caractères). Si ça ne te vas toujours pas, tu peux peut-être ré-expliquer ton problème. Plus je relis les messages précédents et moins je comprends... D'où ça sort ces "body", "mdb" et "famille_article" ??? Pourtant mauyebo n'a bien que ces 4 messages à son actif, donc ça ne peut pas être la suite d'une discussion commencée ailleurs... Vous vous connaissez et donc vous savez tous les deux quel est le problème de fond, c'est ça ? |
|
|
|
00
|
|
|
#10 | |
![]() ![]() Inscription : janvier 2003 Messages : 2 018 ![]() |
Citation:
Pas de panique ![]() mauyebo est un ami et j'ai commencé son site avec lui . Maintenant il est en train de le terminer à la maison. La réponse que je lui ai donné est probablement celle qui lui conviendra de mieux. je connais très bien la structure du site. Quant au body mdb et lp : C'est le site de son magasin de lingerie . Effectivement la question n'était pas trop appropriée. L'essentiel étant qu'il ait compris.
__________________
N1bus Modérateur Web / PHP Aucune demande technique ne sera traitée par MP . Merci PHP/GD : Génération d'un code-barre Code 39 FCKEditor : Modifier la largeur des listes déroulantes PHP/e-Commerce : Installation d'une solution de paiement en ligne SIPS-ATOS |
|
|
|
00
|
|
|
#11 |
|
Membre chevronné
![]() Inscription : avril 2007 Messages : 764 ![]() |
j'étais donc arrivée à la bonne conclusion, ça me rassure
![]() Bon ben dans ce cas, tu sais certainement mieux que moi ce dont il a besoin, donc je vous laisse. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com