Recherche dans Tableau php

Bonjour, svp jai besoin d'aide en php
jai converti un fichiee txt en tableau indexé , et quand j'utilise la fontion array_serach elle ne me retourne rien , j'ai fait plusieurs tests avec des valeurs existantes dans le tableau.
Merci

4 réponses

  1. (Pour plus de lisibilité, je colle la réponse ici plutôt que dans les commentaires)

    Ton fichier, tu le récupères en utilisant la fonction file(), non ?
    Or cette fonction, par défaut, laisse les retours à la ligne dans les éléments du tableau de sortie.
    Si tu regardes le code source de ta page avec le code que tu me montres, tu devrais voir ces retours à la ligne qui empêchent array_search de trouver les correspondances.

    Pour corriger le problème, utilise file avec l'argument suivant :
    $tableau = file($fichier, FILE_IGNORE_NEW_LINES);
    (cf doc : https://www.php.net/manual/fr/function.file.php )

    Xavier
    1
    1. Bonjour,

      Peux-tu nous donner ton code utilisant la fonction array_search ?

      Xavier
      0
      1. le voila:

        $clef_a_retourner = array_search('valeur_a_rechercher', $montableau);

        echo $clef_a_retourner ;
        0
        1. OK.
          Essaie de mettre un var_dump($montableau) pour voir exactement ce que contient ton tableau.
          0
        2. jai deja fait le code ci dessous pour afficher le tableau , et chaque colonne contient une ligne du fichier

          foreach($tabl as $cle => $element)

          {
          $clee=$cle+1;
          echo "[ ligne $clee ] ===============> $element<br />";
          }
          0
        3. Ah, tiens, je crois que je comprends.
          Ton fichier, tu le récupères en utilisant la fonction file(), non ?
          Or cette fonction, par défaut, laisse les retours à la ligne dans les éléments du tableau de sortie.
          Si tu regardes le code source de ta page avec le code que tu me montres, tu devrais voir ces retours à la ligne qui empêchent array_search de trouver les correspondances.

          Pour corriger le problème, utilise file avec l'argument suivant :
          $tableau = file($fichier, FILE_IGNORE_NEW_LINES);
          (cf doc : https://www.php.net/manual/fr/function.file.php )

          Xavier
          0
        4. ouép , ca marche, merci xav
          0
        5. ca fé lgtps k tu code en php??
          0
      2. jai just une petit question stp? je veux faire une interface web pour gerer un svn ; en gros je dois manupuler le fichier de config qui ressemble a ceci :

        [groups]
        nom_groupe=user1,user2,.....
        [path_du_repository]
        groupe dans ce rypo
        ..............................

        quesque tu me conseille ?
        0
        1. Mmmmh, de deux choses l'une.

          Soit tu ne connais pas à l'avance les différents éléments que tu peux trouver dans le fichier de config, dans ce cas-là je pense que tu devrais réécrire le contenu du fichier dans un tableau associatif, du genre :
          $config["groups"]["nom_du_groupe"] = "user1, user2...";

          Soit tu connais les différents éléments possibles, et tu te crées un objet SVNConfig dans lequel tu pourras stocker ces éléments :
          class SVNConfig
          {
          var $groups = array()...;
          var $path = array()...;
          }

          Xavier
          0