Kom ihåg mig?
Home Menu

Menu


Php array, hitta nyckel.

Ämnesverktyg Visningsalternativ
Oläst 2006-06-10, 18:48 #1
linus1 linus1 är inte uppkopplad
Medlem
 
Reg.datum: Jan 2004
Inlägg: 70
linus1 linus1 är inte uppkopplad
Medlem
 
Reg.datum: Jan 2004
Inlägg: 70
Finns det någon funktion som ger tillbaka nyckeln för en särskilld array.

Kod:
$arr['1'] = "fot";
$arr['2'] = "bolls";
$arr['3'] = "vm";
Jag vem att den $arr innehåller "bolls" men jag vet inte vilken nyckel. Hur får jag ut det?

hehe lite svårt och förklara men det gick förhoppningsvis fram.
linus1 är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-10, 18:54 #2
tydal tydal är inte uppkopplad
Medlem
 
Reg.datum: May 2005
Inlägg: 130
tydal tydal är inte uppkopplad
Medlem
 
Reg.datum: May 2005
Inlägg: 130
array_search, t.ex.:

$nyckel = array_search("bolls", $arr);
tydal är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-10, 22:01 #3
PgDs avatar
PgD PgD är inte uppkopplad
Medlem
 
Reg.datum: Dec 2005
Inlägg: 164
PgD PgD är inte uppkopplad
Medlem
PgDs avatar
 
Reg.datum: Dec 2005
Inlägg: 164
Eller array_flip. Kan kanske vara snabbare om man har stora arrayer. Om man inte först måste göra en kopia av arryen förstås.

<?php

$arr['1'] = "fot";
$arr['2'] = "bolls";
$arr['3'] = "vm";

$arr = array_flip($arr);

$nyckel = $arr['bolls'];

?>
PgD är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-22, 11:25 #4
Blackexs avatar
Blackex Blackex är inte uppkopplad
Medlem
 
Reg.datum: Jun 2006
Inlägg: 238
Blackex Blackex är inte uppkopplad
Medlem
Blackexs avatar
 
Reg.datum: Jun 2006
Inlägg: 238
Se bara till att du inte har en array där samma värde finns flera gånger Då finns det ju flera matchande nycklar!
Blackex är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-06-27, 00:51 #5
martines avatar
martine martine är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Mar 2005
Inlägg: 767
martine martine är inte uppkopplad
Mycket flitig postare
martines avatar
 
Reg.datum: Mar 2005
Inlägg: 767
Citat:
Originally posted by PgD@Jun 10 2006, 22:01
Eller array_flip. Kan kanske vara snabbare om man har stora arrayer.
Tvivlar på att flippa hela arrayen skulle vara snabbare än att använda php:s inbyggda array_search()...

Dessutom finns det ju en hel del problem med det, bl a samma värde som Blackex påpekat, och det förutsätter att värdet inte är en sträng med märkliga tecken eller t ex en array eller ett objekt. Att flippa arrayen bara för att få reda på nyckeln är lite överdrivet och dålig programmeringspraxis eftersom risken är stor att man någon annanstans använder arrayen och glömmer att man flippat den. Använd array_search() istället, eller någon av de andra fina array-funktionerna för att få tag på nyckeln.
martine är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 04:37.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017