Bjour,
J'ai un souci, dans le monde "mainframe", j'avais developpé une logique pour comparer la situation DB avant et après traitement, les comparer et décider automatiquement du traitement à effectuer sur ces DBs.
J'essaye d'appliquer à PHP mais... j'ai commencé et voici mon souci.
Je n'affiche pas tous les champs de la table que je veux mettre à jour!
J'ai donc une liste de champs affiché sur mon écran:
Je transforme ce tableau associatif ainsi:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 $fields = array ( "email" , // 1 "civilite" , "age" , "nom" , "prenom" , // 5 etc "connu" // 15 ) ;
Ce qui me donne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part $this->flip = array_flip($fields) ;
Je fais un merge avec une définition complète et j'ai:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Flip : Array ( [email] => 0 [civilite] => 1 [age] => 2 [nom] => 3 [prenom] => 4 [question] => 5 [reponse] => 6 [numero] => 7 [boite] => 8 [voie] => 9 [nomvoie] => 10 [postcode] => 11 [ville] => 12 [pays] => 13 [connu] => 14
Mais les champs en gras sont de trop et je ne sais comment les éliminer !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Merge : Array ( [email] => jecrapahute@gmail.com [civilite] => 3 [age] => 6 [nom] => Mathot [prenom] => Etienne [question] => 3 [reponse] => Victor [numero] => 1693 [boite] => [voie] => 6 [nomvoie] => dAulas [postcode] => 30120 [ville] => LE VIGAN [pays] => 1 [connu] => 1 [password] => 10f1858e02f14c7b5c70e89e020b9ab4 [rang] => 3 [backlink] => [inv_date] => 0000-00-00 [inv_cfr] => [sub_date] => 2010-07-31 13:38:53 [sub_cfr] => [reg_date] => 0000-00-00 [activ_date] => [activ_code] => oui )
J'ai essayé array_diff, array_intersect(_assoc) mais sans résultat.
Quelqu'un peut'il me montrer l'astuce à aplliquer ?
Partager