Bonjour,

Je voudrais pouvoir faire des recherches variable dans un tableau deux dimensions.
je m'explique.

J'ai un tableau dans cette forme:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
<?php
  $table = array(
        0 => array("nom" => "marc", "prenom", "jule", "age" => "23", "id" => "W24"),
        1 => array("nom" => "stephane", "prenom", "paul", "age" => "25", "id" => "W25"),
        2 => array("nom" => "loic", "prenom", "julie", "age" => "21", "id" => "W26"),
        3 => array("nom" => "mathieu", "prenom", "sarah", "age" => "23", "id" => "W27"),
        4 => array("nom" => "luc", "prenom", "audrey", "age" => "25", "id" => "W28"),
        5 => array("nom" => "loic", "prenom", "jule", "age" => "23", "id" => "W29")
  );
?>
J'ai également un formulaire de recherche qui fonctionne avec la méthode post.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
<form method="POST">
  <input type="text" name="nom" />
<input type="text" name="prenom" />
<input type="text" name="age" />
<input type="text" name="ref" />
</form>
dans ce style là.

Par exemple si je fait une recherche sur l'age, j'aimerais qu'il me donnent l'id des tableau correspondant.

dans un premier temps je me suis dis que je pourrais créer une autre variable avec une recherche avec array_search
mais après multiple test je n'y suis pas arrivé

Voici un petit test que j'ai effectué mais sans succès..

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
<?php
$table = array(
        0 => array("nom" => "marc", "prenom", "jule", "age" => "23", "id" => "W24"),
        1 => array("nom" => "stephane", "prenom", "paul", "age" => "25", "id" => "W25"),
        2 => array("nom" => "loic", "prenom", "julie", "age" => "21", "id" => "W26"),
        3 => array("nom" => "mathieu", "prenom", "sarah", "age" => "23", "id" => "W27"),
        4 => array("nom" => "luc", "prenom", "audrey", "age" => "25", "id" => "W28"),
        5 => array("nom" => "loic", "prenom", "jule", "age" => "23", "id" => "W29")
      );
 
      foreach ($table as $key => $value) {
        $table_schearch[] = array_search("marc", array_column($table[$key], 'nom'));
        $table_schearch[] = array_search("25", array_column($table[$key], 'age'));
        $table_schearch[] = array_search("stephane", array_column($table[$key], 'nom'));
      }
      $table_schearch = array_unique($table_schearch);
      debug($table);
      debug($table_schearch);
?>

Auriez vous une solution plus simple et plus efficaces ?
en sachant que dans mon véritable tableau j'ai une histoire de 50 recherches différente possible.

Merci d'avance