Avatar billede lars_dum Nybegynder
19. januar 2003 - 14:03 Der er 8 kommentarer og
1 løsning

kun int i array

kan man ikk strippe indholdet af et bestemt felt i et array så den kun kan have int, da det hverken må have double eller tegn i det felt.

eller man kunne tvinge hele arrayet til at være integer.
Avatar billede iqzero Nybegynder
19. januar 2003 - 14:24 #1
while(list($key,$val)=each($ditArray)) {
  if(is_int($val)) {
    $nytArray[]=$val;
  }
}
Avatar billede rzj Nybegynder
19. januar 2003 - 14:26 #2
Avatar billede iqzero Nybegynder
19. januar 2003 - 14:29 #3
Den kendte jeg ikke. :)
Avatar billede lars_dum Nybegynder
19. januar 2003 - 14:30 #4
Din funktion vil så strippe det gamle array og så kopiere alt indholdet over i det nye array med samme placering som før ?
Avatar billede rzj Nybegynder
19. januar 2003 - 14:51 #5
næ, nej. array_filter og iqzero's løsning laver simpelthen bare et nyt array der kun indeholder integers. Placeringen at de enkelte værdier vil være forskellig:
før filtrering:
array(1, 2, 3, 'raz', 4, 5) //placeringen 4 og 5 er ikke korrekt
efter filtrering:
array(1, 2, 3, 4, 5) //placeringen af 4 og 5 er nu korrekt
/raz
Avatar billede iqzero Nybegynder
19. januar 2003 - 14:57 #6
Nå ja, herregud.. Spørgsmålet er så hvad du vil have på de 'tomme' felter i stedet..

while(list($key,$val)=each($ditArray)) {
  if(is_int($val)) {
    $nytArray[]=$val;
  } else {
    $nytArray[]=false;
  }
}
Avatar billede lars_dum Nybegynder
19. januar 2003 - 15:15 #7
pointen er jo at hele arrayet skal forblive en identisk kopi af det gamle array dvs key osv må ikk ændres, blot det at der nu kun er integers i stedet for tegn og doubles ? (giver det mening?)
Avatar billede iqzero Nybegynder
19. januar 2003 - 15:34 #8
while(list($key,$val)=each($ditArray)) {
  if(is_int($val)) {
    $nytArray[$key]=$val;
  } else {
    $nytArray[]=false;
  }
  $ditArray=$nytArray;
}

Så tror jeg ikke du kommer tættere på - men test det selv.
Avatar billede Slettet bruger
19. januar 2003 - 16:52 #9
<?
$a = array(1, 2, 'doo', 3);
$a = array_filter($a, 'is_int');
?>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester