20-03-2013, 02:14 PM
(Modification du message : 20-03-2013, 03:27 PM par Sephi-Chan.)
Bonjour, j'ai une regexp qui me sert à isoler les valeurs d'une énumération MySQL.
Je pensais que ceci fonctionnait bien mais j'ai découvert un cas ou ça ne passe pas:
En initialisant $type avec enum('String','Integer','Boolean','Formule'), je récupère dans $values:
J'ai la valeur Boolean qui a mystérieusement disparue.
NB: une autre énumération ( enum('none','in','out') ) passée par le même traitement comporte bien les valeurs attendues en retour
Je pensais que ceci fonctionnait bien mais j'ai découvert un cas ou ça ne passe pas:
//Recherche des valeurs de l'énumération qui sont entre quotes et séparées par des virgules
preg_match("/enum\('(.*?)','(.*?)'(?:,'(.*?)'){0,}\)/",$type,$values);
En initialisant $type avec enum('String','Integer','Boolean','Formule'), je récupère dans $values:
Citation :enum('String','Integer','Boolean','Formule')
String
Integer
Formule
J'ai la valeur Boolean qui a mystérieusement disparue.
NB: une autre énumération ( enum('none','in','out') ) passée par le même traitement comporte bien les valeurs attendues en retour