[php] Array in array en dan zoeken

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • aOk
  • Registratie: September 2000
  • Niet online
Ik wil kunnen zoeken in deze array maar dat werkt niet :(
print_r($map geeft het volgende resultaat:
Array (
[0] => Array ( [User1] => User1 [Password1] => Password1 )
[1] => Array ( [User2] => User2 [Password2] => Password2 )
)

Maar ik wil dus bijvoorbeeld zoeken naar password1.. en dan als resultaat Password1 krijgen

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?         
$map = array();
     
      array_push($map, array("User1" => "User1"
           , "Password1"         => "Password1"));
           
      array_push($map, array("User2" => "User2"
           , "Password2"         => "Password2"));
           
  $key = array_search("Password1",$map); //dit werkt dus blijkbaar niet
  echo $key; //geeft geen resultaat
  
  print_r($map);
  echo "<BR><BR>";
?>


Ik hoop dat iemand weet hoe dit moet

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 17-09 14:05

.oisyn

Moderator Devschuur®

Demotivational Speaker

uhm, wat dacht je van met de hand de array doorlopen en als een element een array is die dan ook weer doorlopen :?

ik zie het probleem niet helemaal...

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

Verwijderd

vraagje? waarom geef jij in je voorbeeld User1 de inhoud User1 en Password1 de inhoud Password1? ik begrijp dat je uit een array de user bij het passwordje wilt zoeken en visa versa? zo jah dan kan je het op een simpelere manier doen mja daar zal ik dan mischien later op terug komen.

Acties:
  • 0 Henk 'm!

  • aOk
  • Registratie: September 2000
  • Niet online
vraagje? waarom geef jij in je voorbeeld User1 de inhoud User1 en Password1 de inhoud Password1?
ehm dit is gewoon een voorbeeldje..

het liefst had ik het op de volgende manier:

deze array word gemaakt in een while lus
en hij er moeten elke keer dat hij de lus doorgaat nieuwe waarden in:

PHP:
1
2
3
4
5
6
7
$i=1;
while($record = mysql_fetch_object($resultaat)
{
  array_push($map, "User$i" => "$record->User" 
  ,"Password$i"         => "$record$Password"); 
  $i++;
}

Het is dus de bedoeling dat ik de array steeds verder kan vullen.
Maar ik snap niet hoe.

[ Voor 17% gewijzigd door aOk op 24-03-2003 16:48 ]


Acties:
  • 0 Henk 'm!

Verwijderd

je hebt toch aan de hand van de array-index een id voor je users?
kan het niet gewoon zo:
arrayNaam[$i][]=$record->user
arrayNaam[$i][]=$record->password

Acties:
  • 0 Henk 'm!

Verwijderd

Hmmm... even uit de losse pols:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
function zoek_in_array($array,$str){
  $results = array();
  foreach($array as $element){
    if(is_array($element)){
      $results = array_merge($results,zoek_in_array($element,$str));
    }
    elseif(strtolower($str) == strtolower($element)){
      $results[] = $element;
    }
  }
  
  return $results;
}
Pagina: 1