IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Fonction de recherche dans tableau avec key


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2003
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 12
    Points : 10
    Points
    10
    Par défaut Fonction de recherche dans tableau avec key
    Bonjour à tous.

    Alors disons que j'ai une table comme celle-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $Table = array (
    	array("id" => 0,	"pays" => "aaa", "ville" => "bbb" ),
    	array("id" => 1,	"pays" => "ccc", "ville" => "ddd"),
    	array("id" => 4,	"pays" => "ccc", "ville" => "xxx"),
    	array("id" => 2,	"pays" => "eee", "ville" => "fff"),
    	array("id" => 3,	"pays" => "ggg", "ville" => "hhh") );
    Rapidement le pourquoi, c'est que je veux pouvoir insérer dans le futur de nouveaux élements où je veux (comme l'ID 4 dans mon exemple).

    Pour le moment pour acceder a un element, je dois faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    foreach ($Table as $index => $id) 
       if ($id['id'] ==  $id_recherché)
          return ($ind);
    Ma question est simple. Existe t'il une fonction php qui fasse ceci au lieu de mon bout de code ?

  2. #2
    Membre actif Avatar de stephanegib2
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 152
    Points : 233
    Points
    233
    Par défaut
    pas a ma connaissance.
    Il y a array_push, qui empile à la fin et array_unshift qui empile au début.

  3. #3
    Membre actif
    Profil pro
    Responsable de service informatique
    Inscrit en
    Août 2006
    Messages
    174
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2006
    Messages : 174
    Points : 232
    Points
    232
    Par défaut
    Bonjour,

    Euh désolé mais je ne comprends pas ton besoin.

    Tu présentes un tableau php, trié par pays.
    Il existe des fonctions de tri php: http://us3.php.net/manual/fr/array.sorting.php

    Mais ce n'est peut être pas cela que tu veux.

    Natso

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Si ton id est unique, tu peux l'utiliser comme clé du tableau principal, ça te facilitera grandement les recherches :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $Table = array (
    	0 => array("id" => 0,	"pays" => "aaa", "ville" => "bbb" ),
    	1 => array("id" => 1,	"pays" => "ccc", "ville" => "ddd"),
    	4 => array("id" => 4,	"pays" => "ccc", "ville" => "xxx"),
    	2 => array("id" => 2,	"pays" => "eee", "ville" => "fff"),
    	3 => array("id" => 3,	"pays" => "ggg", "ville" => "hhh") );
     
    $ligne_recherche = $Table[$id_recherche];
    Pour l'ajout d'éléments, comme dit précédemment, en général on ajoute à la fin et on trie le tableau en cas de besoin.

  5. #5
    Membre à l'essai
    Inscrit en
    Octobre 2003
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 12
    Points : 10
    Points
    10
    Par défaut
    Je veux bien faire le tri en php, ok, mais dans ce cas qui peut me donner la fonction pour trier ma table par ordre alphabétique suivant le pays ET ensuite suivant la ville ?

    Parce-que je ne trouve pas de fonction pour trier suivant 2 clefs...

    @celira : oui, la clef est unique, mais dans ton exemple si je liste la table pour proposer les lignes de mon tableau comme des options d'un select, j'aurai l'index 2 avant le 4, donc ça ne sera plus trié par ordre alphabétique.

  6. #6
    Membre actif
    Profil pro
    Responsable de service informatique
    Inscrit en
    Août 2006
    Messages
    174
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2006
    Messages : 174
    Points : 232
    Points
    232
    Par défaut
    D'où viennent les données à l'origine ?


    Natso

  7. #7
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372

Discussions similaires

  1. [XL-2007] Fonction recherche dans tableau a plage variable
    Par skyzix dans le forum Excel
    Réponses: 2
    Dernier message: 24/07/2013, 10h04
  2. Sélection ligne complète avec recherche dans tableau
    Par Dralex dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/12/2010, 08h32
  3. fonction recherche dans tableau javascript
    Par calitom dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 27/11/2006, 15h51
  4. Recherche dans Tableau de point
    Par Platypus dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 30/08/2005, 18h29
  5. pb de coord de tex dans tableau avec multitex
    Par sebh dans le forum OpenGL
    Réponses: 3
    Dernier message: 25/01/2004, 21h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo