login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Element uit Array verwijderen

Offline klostpret - 11/09/2005 14:32
Avatar van klostpretHTML interesse Hallo.

Ik wil even weten hoe ik een element uit een array moet verwijderen, ongeacht op welke plaats hij staat.

Stel, ik heb de volgende arrays:
$arr1[1]="boom";
$arr1[2]="peer";
$arr1[3]="berk";
$arr1[4]="eik";

$arr2[1]="eik";
$arr2[2]="boom";
$arr2[3]="peer";
$arr2[4]="berk";

Ik wil er nu voor zorgen, dat uit beide arrays "peer" verwijderd wordt, dus houden we over: arr1: boom,berk,eik arr2: eik,boom,berk

Hoe doe ik dit? (Ik wil dus een universele functie, 1 functie dus, en geen twee)

5 antwoorden

Gesponsorde links
Offline Ontani - 11/09/2005 14:36
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
unset($arr1[2]);
unset($arr2[3]);
Offline klostpret - 11/09/2005 14:41
Avatar van klostpret HTML interesse Ok. Maar, wat nu, als ik niet de plaats van "peer" in de array weet?
Offline Ontani - 11/09/2005 14:43 (laatste wijziging 11/09/2005 14:47)
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
array doorlopen, controleren of de waarde peer is als de waarde peer is: unset. anders gewoon volgende index

zo dus:

  1. <?
  2. $numElements = count($arr1);
  3.  
  4. for($counter=0; $counter < $numElements; $counter++)
  5. {
  6. if ($arr1[$counter] == "peer") { unset($arr1[$counter]); }
  7. }
  8.  
  9.  
  10. $numElements = count($arr2);
  11.  
  12. for($counter=0; $counter < $numElements; $counter++)
  13. {
  14. if ($arr2[$counter] == "peer") { unset($arr2[$counter]); }
  15. }
  16. ?>
Offline bosgroen - 11/09/2005 14:47 (laatste wijziging 11/09/2005 14:55)
Avatar van bosgroen Gouden medaille

PHP interesse
Deze functie zou het moeten doen (nog niet getest)
  1. <?
  2. function verwijder_value($array,$value) {
  3. $trans = array_flip($array);
  4. unset($trans[$value]);
  5. return array_flip($trans);
  6. }
  7.  
  8. //gewoon toepassen:
  9. $arr1 = verwijder_value($arr1,'peer');
  10. $arr2 = verwijder_value($arr2,'peer');
  11. ?>

of ook (iets eenvoudiger)
[code]<?
unset(array_search('peer',$arr1));
?>[code]
Offline klostpret - 11/09/2005 15:19
Avatar van klostpret HTML interesse Hardstikke bedankt! Beide werken. Ik ga nu snel verder met mn script 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.217s