OVH Cloud OVH Cloud

Ensembles sur tableau

4 réponses
Avatar
Delf
Bonjour.

Suite à une requête SQL bien complexe, je suis obligé de passer par un
ensemble dans lequel j'insérerai des tableaux de dimension 3 (nick, X,
Y). Par exemple j'insére (Delf, 1, 2) et si je souhaite insérer par la
suite (Delf, X, Y) le tableau ne serait pas ajouter à l'ensemble car le
nick existe deja... par contre je pourrais insérer (nick, X, Y) avec
nick <> Delf et qqsoit X, Y.
Possible ?
Merci d'avance.

--
Delf
www.snoworld.org

4 réponses

Avatar
Khone
Salut

Pourquoi ne pas utiliser le rang 0 de ton tableau comme clé
dans ton ensemble (qui est un tableau également je suppose):

Ensemble["Delf"] = [X,Y] ou Ensemble["Delf"] = ["Delf", X, Y]

avec un test comme isset() ou is_array() sur Ensemble["Delf"]
tu peux tester l'existence du nick

Ne peux -tu pas directement éliminer les doublons avec ta
requête SQL (DISTINCT) ?

Khône
http://www.pasdesite.com
Avatar
Delf
Delf wrote:

[...]


Résolu mais pas de cette manière.

--
Delf
www.snoworld.org

Avatar
Thibaut Allender

Suite à une requête SQL bien complexe, je suis obligé de passer par un
ensemble dans lequel j'insérerai des tableaux de dimension 3 (nick, X,
Y). Par exemple j'insére (Delf, 1, 2) et si je souhaite insérer par la
suite (Delf, X, Y) le tableau ne serait pas ajouter à l'ensemble car le
nick existe deja... par contre je pourrais insérer (nick, X, Y) avec
nick <> Delf et qqsoit X, Y.
Possible ?


il faudrait utiliser "nick" comme index, et utiliser un tableau
intermediaire pour les 2 autres données

par exemple :
$tableau = array('Delf' => array(1,2));

on peut ensuite inserer ou changer :

$tableau['Delf'] = array(X,Y); // met a jour l'entree "Delf"
$tableau['nick'] = array(X,Y); // insere l'entree "nick"

--
thibaut allender | freelance | web|system developer|designer
+32 496 26 75 76 | http://capsule.org *new version*

Avatar
Delf
Khone wrote:

Ensemble["Delf"] = [X,Y] ou Ensemble["Delf"] = ["Delf", X, Y]
avec un test comme isset() ou is_array() sur Ensemble["Delf"]
tu peux tester l'existence du nick


J'ai utilisé un tableau et la fonction in_array()

Ne peux -tu pas directement éliminer les doublons avec ta
requête SQL (DISTINCT) ?


Non car le DISTINCT ne peut pas s'appliquer sur l'un des champs
récupéré... enfin, j'ai pas réussi...
Merci


--
Delf
www.snoworld.org