PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 11-10-2010 09:37:53

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

trouver le bon motif PRCE

yop,

je cale sur un truc 'bete'
dans la chaine
"`visible` enum('false','true') DEFAULT 'false',"

je voudrais avoir le contenu de enum (false et true sans les ').

avec preg_match_all ('/\'(\w){1,}\'/is',$chaine,$match);
j'ai aussi le false du default que je ne souhaite pas.

est il possible de trouver un motif plus restrictif ? (dans les () ?)

Merci

@+


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

#2 12-10-2010 22:23:06

Jc
Membre
Lieu : Zillisheim - Alsace
Inscription : 15-04-2010
Messages : 1 629
Site Web

Re : trouver le bon motif PRCE

Bonjour,


preg_match("#(?<=enum\(')([a-z]+)','([a-z]+)#");
 

devrait aller. La capture du false,true ou false,false, ou true,false ou true,true t'aidera à récup les données.
++

Dernière modification par Jc (12-10-2010 22:25:45)


POO PHP+Ajax en MVC avec PDO et Bases de données épaisses  : What else?

Hors ligne

#3 13-10-2010 12:58:05

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

Re : trouver le bon motif PRCE

salut Jc,

effectivement ton motif est bon, par contre je me suis mal expliqué, en fait je souhaite un truc générique quelque soit le nom d'élément dans le enum (que je vais pas connaitre à l'avance).

le but est d'afficher une liste déroulante des valeurs du enum (avec la valeur par défaut en premier).

je continue dans se sens à partir de ce ce que tu m'a déja donné,

merci

@+


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

#4 13-10-2010 20:17:01

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

Re : trouver le bon motif PRCE

bon je vais faire avec

<?php $ret =  preg_match_all("#'([a-zA-Z0-9_\-]+)'#is",$chaine,$match);?>

et j'ajoute un preg_match pour le default si oui je vire le dernier élément du tableau wink

merci

@+


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

#5 13-10-2010 20:55:30

xTG
GrandGourou
Inscription : 18-06-2009
Messages : 1 127
Site Web

Re : trouver le bon motif PRCE

Un article qui peut t'intéresser :
http://forum.phpfrance.com/vos-contribu … 26085.html

Hors ligne

#6 14-10-2010 09:04:57

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

Re : trouver le bon motif PRCE

Merci xTG c'est ce qu'il me fallait.

j'étais arrivé à une usine à gaz, j'ai juste a ajouter une méthode dans ma classe pour ces types de champ.

j'avais ce code pour enum


<?php
if (preg_match('/enum/is', $champ)){
                                                //$pattern = '/\'(.+)\'/is';
                                                $pattern = "#'([a-zA-Z0-9_\-]+)'#is";
                                                preg_match_all($pattern, $champ, $matchesarray);
                                                $liste = $matchesarray[1];
                                                unset($matchesarray);
                                                if (preg_match('/default/is',$champ)) {
                                                    $defaut = $liste[ count($liste) - 1 ];
                                                 unset($liste[ count($liste) - 1 ]);
                                                }
                                                else {
                                                    $defaut = '';
                                                }
                                                preg_match("#default '([a-zA-Z0-9_\-]+)'#is",$champ,$ret);
                                                // type enum on affiche un select
                                                echo '<select name="'.$matches[1].'">';
                                                foreach ($liste as $option){
                                                    echo '<option value="'.$option.'"';
                                                    if ( $defaut == $option ) echo ' selected="selected"';
                                                    echo '>'.$option.'</option>';
                                                }
                                                echo '</select><br />';
?>

qui va être modifié par ce que tu m'a montré avec deux trois modifs ça sera plus simple

merci

@+


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

#7 14-10-2010 10:54:32

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : trouver le bon motif PRCE

Trop fort Ranuleto, il arrive à modifier des trucs avec des modifs.;)


Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#8 14-10-2010 11:11:34

moogli
Modérateur
Inscription : 08-05-2009
Messages : 336
Site Web

Re : trouver le bon motif PRCE

wé et encore j'ai pas beaucoup réfléchis ...

je viens de découvrir l'emploi du describe en SQL qui devrais modifier un peu touT ça .... smile


Il en faut peu pour être heureux pompompompompompompompompompompom

Hors ligne

Pied de page des forums