Toon posts:

[array] items verwisselen

Pagina: 1
Acties:
  • 90 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik heb een array ($this->menu). In die array staan andere arrays, waarin de variabele "pos" staat. Bijvoorbeeld

$this->menu[1]["pos"]
Dit is bijvoorbeeld 0, of 3, of -5 ofzo
Als het 3 is, dan moet die array 3 plaatsen terug in de hoofdarray. Als het -1 is, dan moet ie 3 plaatsen verder
Bijvoorbeeld:
(1) $this->menu[0]["pos"]=0
(2) $this->menu[1]["pos"]=0
(3) $this->menu[2]["pos"]=0
(4) $this->menu[3]["pos"]=2

Dan moet het in de volgorde (1)(4)(2)(3) komen te staan. Dit lukt met de volgende functie:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?
function ParseMenu(){
  for($i=1; $i<=sizeof($this->menu); $i++){
  if ($this->menu[$i]["pos"]>0)
    {
    for ($j=1; $j<=$this->menu[$i-$j+1]["pos"]; $j++)
      {
      if($this->menu[$i-$j]){
          $blaat=$this->menu[$i-$j];
          $this->menu[$i-$j]=$this->menu[$i-$j+1];
          $this->menu[$i-$j+1]=$blaat;
          $this->menu[$i-$j+1]["pos"]=$this->menu[$i-$j+1]["pos"]-1;
        }
      }
    }
  if ($this->menu[$i]["pos"]>0)
    {
      $this->ParseMenu();
    }
  }
?>

Ik kan nou alleen geen functie maken die het omgekeerde doet, waarbij je dus de waarde -1 aan pos geeft. Ik heb echt (bijna) alles al geprobeerd, weet iemand een oplossing?

Verwijderd

Topicstarter
Iemand? Of is dit te ingewikkeld. Wacht..... chem?????????

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Het is zelfs heel makkelijk...
Door ceidhof - zaterdag 10 november 2001 16:34
Door ceidhof - zaterdag 10 november 2001 16:51
Ongeduldigheid wordt nooit beloond. (althans niet door mij.) zal wel eens een hint geven over een uurtje ofzo..

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

svp in 1 topic houden:
[topic=316343/1/50]

Klaar voor een nieuwe uitdaging.


Dit topic is gesloten.